在jquery自动完成中使用服务器上的json数据

时间:2012-04-27 08:20:10

标签: jquery json

我在http://www.abcd.com/friends.json上有以下数据(这不是真正的链接,但我使用的是我的项目中的真实链接,我可以连接到服务器):

{John, Kyle, Abby, Greer, Rob, Cathy}

我有以下脚本来自动填充文本字段:

$(function() {
    $("input#autocomplete").autocomplete({
    source: $.getJSON("http://www.abcd.com/friends.json")
});
  });

$(function() {
  var friendList = null;
  $.getJSON("http://www.abcd.com/friends.json", function(data){
     friendList = data;
     $("#friend" ).autocomplete({
    source: friendList
    });
  });
});
我做错了什么?如果未从远程服务器调用json对象,则这两个代码都有效 谢谢你的帮助。

2 个答案:

答案 0 :(得分:2)

您的JSON无效。可能你想要这样的东西:

[ 'John', 'Kyle', 'Abby', 'Greer','Rob', 'Cathy' ]

另一个可能的错误(如评论中的JiDai所述)可能是您从其他服务器获取的JSON而不是您的页面。在这种情况下,要么将JSON移动到同一服务器,要么实现一些CORS模式。

答案 1 :(得分:0)

请您将“source”替换为“serviceUrl”

$(function() {
    $("input#autocomplete").autocomplete({
    serviceUrl: "http://www.abcd.com/friends.json"
    });
});