Twitter Bootstrap 2.2.1 で Typeahead 検索を作成しようとしています。次のような文字列ではなく、JSONを操作できました。
$('#search').typeahead({
minLength: 3,
source: function (query, process) {
$.post('@Url.Action(<MySearchAction>, <MyControllerName>)', { Text: query }, function (data) {
var source = [];
$.each(data, function (index, value) {
source.push(JSON.stringify(value));
});
process(source);
});
},
updater: function (item) {
var itemJSON = JSON.parse(item);
window.location.href = '@Url.Action(<MyDetailsAction>, <MyControllerName>)/' + itemJSON.ID;
},
highlighter: function (item) {
var itemJSON = JSON.parse(item);
return itemJSON.Name;
},
});
今はもっとやりたい
- 先行入力で JSON を操作するのは正しい方法ですか?
- ドロップダウンでさまざまなタイプのオブジェクトを表示したい - 曲とアルバムのタイプがあると仮定し、見つかったすべての曲を表示し、次に仕切りを表示し、次に見つかったすべてのアルバムを表示したいとします。
- アルバムのカバーのように、ドロップダウンに画像を表示したい。
ここでトピックを読みましたAllow loading images and custom HTML in typehead results。
そのトピックからの引用: 「項目とメニュー オプションを組み合わせて使用すると、新しいテンプレートを指定できます」が、正しい方法でそれを行う方法がまだわかりません。
ありがとうございました。