嗨,我正在使用jQuery 自动完成库(因为没有更好的词)来尝试在我一直在处理的页面上实现基本的自动完成功能。通过基本上使用该页面上示例代码的修改版本,我已经设法通过从同一文件夹中的静态 html 页面获取 json 数据来使自动完成工作。那工作得很好。现在我正在尝试从 python 脚本中获取数据,该脚本在谷歌应用程序引擎上本地实现,它会吐出 json 数据。
以下是页面上原始输入的一些示例数据:
["foo", "bar"]
我已经以多种方式打印数据以验证数据格式是否正确(对不起,我不知道有什么可靠的方法来测试它是否是有效的 json 数据)。
现在看代码!这是处理自动完成功能的实际功能:
function suggest(textbox_data){
$(textbox_data).autocomplete({
source : function (request, response)
{
var source_url = "http://localhost:8081/developers/add/jqueryResponse";
//var data = "hello world"
$.ajax({
url: source_url,
dataType: 'json',
success: function (data) {
response(data);
}
});
}
});
}
我将所有内容都放入函数的原因是因为我正在动态生成文本框。只是为了让一切清楚,这是添加文本框的行。如果有人真的想要,我可以添加文本框生成的所有代码,但我很确定这不是问题。
$('#buttondiv').append('<div><label>Textbox #'+$counter+'</label><input type="text" name="textbox[]" class="textbox" value="" id="country" onkeyup="suggest(this);"/><div id="testdiv"></div></div>');
现在查看错误消息!当我在 Firefox 中运行脚本时(当谈到在本地使用 $.ajax 功能时,Chrome 是一只母狗)我在尝试访问包含 JSON 数据的网页时收到来自 firebug 的错误:
GET http://localhost:8081/developers/add/jqueryResponse 200 136ms jquery.min.js (line 16)
在文件的第 16 行,基本上包含脚本中的所有内容,因此它并没有真正缩小范围。无论如何,请帮助!