0

Twitter Typeaheadをリモートのdbデータソースで使いたいです。私は自分の.phpファイルから返された結果を得ることができましたTwitter Typeaheadでリモート結果を表示するには?

return json_encode($ results);

ザは、このようにフォーマットされる:

[ "クロム"、 "TEST01"、 "TEST02"、 "wddwde"]。

しかし、私はそれらを提案として表示する方法を知らないのですか?

比較のために、私はプリフェッチされた 'countries_bloodhound'とこの変数の統合部分を追加しました。これはうまく動作します。私は 'users_bloodhound'とその統合に関する助けが必要です。


var users_bloodhound = new Bloodhound({ 
    datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'), 
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    //name: 'users', 
    remote: {url:'./search.php?query=%QUERY', 
    wildcard: 'QUERY', 
    transform: function(response) { 
      // Map the remote source JSON array to a JavaScript object array 
      return $.map(response.results, function(user) { 
      return { 
       name: user 
      }; 
      } 
    );} 
     }, 
    limit: 10 
}); 

var countries_bloodhound = new Bloodhound({ 
    datumTokenizer: Bloodhound.tokenizers.obj.whitespace('name'), 
    queryTokenizer: Bloodhound.tokenizers.whitespace, 
    prefetch: { 
     url: 'https://cdn.rawgit.com/twitter/typeahead.js/gh-pages/data/countries.json', 
     filter: function (countries) { 
      return $.map(countries, function (country) { 
       return { 
        name: country 
       }; 
      }); 
     } 
    } 
}); 


countries.initialize(); 
users_bloodhound.initialize(); 



$('#bloodhound .typeahead').typeahead({ 
    highlight: true 
}, { 
    name: 'users', 
    displayKey: 'name', 
    source: users_bloodhound.ttAdapter(), 
    templates: { 
     header: '<h4 class="search-name"><small>Users</small></h4>' 
     }},{ 
     name: 'countries', 
      displayKey: 'name', 
      source: countries_bloodhound.ttAdapter(), 
     templates: { 
      header: '<h4 class="search-name"><small>Countries</small></h4>' 
      } 
}); 

答えて

0

コードが正しいです。私は.phpファイルにいくつかの問題がありました。なぜなら、それらをエコーする代わりに結果を返したからです。

関連する問題