1

私は Tastypie ベースの REST API を開発しており、適切な JSON を返します

以下は、オートコンプリート (JQuery AutoComplete) である都市のテキスト ボックスに mou と入力し始めた場合に返される JSON です。

{"meta":    {"limit": 10, "next": null, 
             "offset": 0, "previous": null, "total_count": 1}, 
 "objects": [{"id": "1", "name": "Mountin View", 
              "resource_uri": "/api/meta/city/1/"}]
}

都市のテキスト ボックスに結果を表示し、ユーザーが選択できるようにするにはどうすればよいですか (複数のオブジェクトが返される場合)。

これが私の JQuery コードですが、showResult だけが呼び出されていることがわかりました (すべての関数にアラートがあります) 何か不足していますか?

$("#city").autocomplete('/api/meta/city/', {
    dataType: "json",
    selectFirst: true,
    formatItem:function(item, index, total, query)
               { 
                   alert("formatItem");return item.name; 
               },
    formatMatch:function(item)
                { 
                    alert("formatMatch");return item.name;
                },
    formatResult:function(item)
                 { 
                     alert("formatResult");return item.name;
                 },
    parseJSON:function(data) 
              { 
                 alert("parseJSON");
                 return $.map(data, function(item) 
                                    { 
                                        return { data: item,
                                                 value: item.name,
                                                 result: item.name
                                                }
                                    });
              },
    showResult: function(value, data)
                {
                    alert("ShowResult");
                    json_data = jQuery.parseJSON( value );
                    for(i=0;i< json_data.objects.length;i++)
                    {
                        alert(json_data.objects[i]);
                    }
                    return value;
                }
});
4

0 に答える 0