jquery自动完成不返回结果与
问题描述:
我很难与JQquery自动完成脚本。它工作正常,直到我在搜索查询中使用非UTF8字符执行搜索。jquery自动完成不返回结果与
例如:搜索查询“test”成功返回结果,如“test”,“testé”等 但是当我向搜索查询添加é时,它不再给出任何结果:(查询“test é“不返回结果)。
当我调用执行查询的php脚本并将结果作为json数组返回时,它会向我显示正确的输出:“[{”id“:”1230“,”value“:”Test \ u00e9“}]”,它只是在HTML页面上,下拉结果并没有给出。
对此的任何建议是非常赞赏。
沃尔特
答
我-finally-发现它。和往常一样,这是很简单的:
在JavaScript部分,我CAL的JSON脚本我取代 “问:逃脱(request.term)”,由“问:是encodeURI(request.term) ”。这解决了我的问题!
$("#field")
.autocomplete({
source: function(request, response) {
$.getJSON("./ajax/json_search.php", {
object_type: "artists",
q: encodeURI(request.term)
}, response);
}
})
是否有浏览器的错误控制台的消息? – YMMD 2012-07-09 11:03:34
@ walter81'header(“Content-Type:application/json; charset = UTF-8”);'你是否将html内容类型元标记设置为utf8?和php的头文件内容类型为utf8?,如果不尝试这两种,你也可以描述一下这个问题,你的意思是说这个列表不显示?也看看这个答案http://stackoverflow.com/questions/2127124/utf-8-problem-in-using-jquery-autocomplete-tags希望这有助于:) – Val 2012-07-09 11:08:07
我已经添加了两个头,没有结果。是的,我的意思是列表不显示。它显示我输入“test”时的所有结果,但当我将é添加到搜索字符串时停止(“testé”根本不显示列表)。我已经检查过这个链接,但似乎是另一个问题。 – Walter81 2012-07-09 12:42:00