jquery自动完成没有返回结果与é

时间:2012-07-09 10:58:59

标签: jquery utf-8 character-encoding jquery-autocomplete

我在使用JQquery自动完成脚本时遇到了困难。它一直正常,直到我在搜索查询中使用非UTF8字符执行搜索。

例如:搜索查询“test”成功返回“test”,“testé”等结果 但是当我将é添加到搜索查询时,它不再提供任何结果:(查询“testé”不返回任何结果)。

当我调用执行查询的php脚本并将结果作为json数组返回时,它确实显示了正确的输出:“ [{”id“:”1230“,”value“:” Test \ u00e9“}] ”,它只是在HTML页面上显示下拉结果,不再给出结果。

对此的任何建议都非常感激。

沃尔特

1 个答案:

答案 0 :(得分:0)

我 - 最终找到了它。而且,和往常一样,这很简单:

在我调用JSON脚本的javascript部分中,我用“q: encodeURI (request.term)替换了”q: escape (request.term)“ ”。这解决了我的问题!

$("#field")
.autocomplete({
    source: function( request, response ) {
        $.getJSON("./ajax/json_search.php", {
            object_type: "artists",
            q: encodeURI(request.term)
            }, response);
        }
})