2017-04-02 10 views
0

easyautocompleteプラグインをデータソースに接続し、JSON内の各オブジェクトのタイトルを取得できません。jQuery EasyautocompleteプラグインでREST APIを使用する

data: [{ 
     id: "1", 
     title: "bob", 
     permalink: "/user/folder/bob", 
     type: "user" 
}] 

私は私のREST APIをコールすると、私も同様に、各オブジェクトのtypeを取得する必要がありますtitle値を、取得しようとしている:JSONのサンプルは次のようになります。

var q = $("#global-search").val(); 
var options = { 
    url: "https://search.domain-name.com?q=" + q, 

    getValue: "title", 

    list: { 
     match: { 
      enabled: true 
     } 
    } 
}; 

$("#global-search").easyAutocomplete(options); 

唯一のエラーは、Uncaught TypeError: Cannot read property 'indexOf' of undefinedです。

検索用のURL構造には、検索キーワードとして?q=というクエリパラメータを持つベースURL http://search.domain-name.comが必要です。

私のリクエストが実際に送信され、返されるデータ配列の各オブジェクトのタイプとタイトルによる検索と同様に、これを修正する方法はありますか?

これが私の現在のバイオリンです:JSFIDDLE

答えて

1

私はあなたが、 1だったら、私が知っているURLをチェックします正常に動作していることです。 => Chromeデバッグツールを使用し、ネットワークのI/Oを参照すると便利です。 =>問題を見つけるためにconsole.logを書きます。

  1. コードは大丈夫ですが、jsfiddleを確認したときに表示されます。 "input id =" provider-remote ""とあなたのjquery idが異なっています。あなたはそれをチェックするかもしれません。

  2. いつか、jsfiddleは、http:// httpで外部URLをサポートしていないため、デバッグに役立つかもしれません。

div要素名が監督、おかげだった

+0

グッドラック。私はコンソールをチェックして、何もログに記録していません。私はjsonplaceholderとその作業からのテストURLでURLを置き換えました。 URLにクエリパラメータとしてテキストボックスの値を追加して、元の要件に準拠させるにはどうすればよいですか。私はそれをjsonのプレースホルダーapiで動作するように見せるためにフィディ(https://jsfiddle.net/xb45t46q/1/)を更新しましたが、それらのパラメータを追加する必要があります。 – Matt

関連する問題