0

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 オブジェクトがリモート サーバーから呼び出されない場合、両方のコードが機能します。ご協力ありがとうございます。

4

2 に答える 2

2

JSON が無効です。おそらく、次のようなものが必要です。

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

もう 1 つの考えられるエラー (JiDai がコメントで述べているように) は、ページが提供されているサーバーとは別のサーバーから JSON を取得している可能性があります。その場合、JSON を同じサーバーに移動するか、CORSスキーマを実装します。

于 2012-04-27T08:22:23.980 に答える
0

「source」を「serviceUrl」に置き換えてください。

$(function() {
    $("input#autocomplete").autocomplete({
    serviceUrl: "http://www.abcd.com/friends.json"
    });
});
于 2012-04-27T08:24:02.173 に答える