0

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;
    },
});

今はもっとやりたい

  1. 先行入力で JSON を操作するのは正しい方法ですか?
  2. ドロップダウンでさまざまなタイプのオブジェクトを表示したい - 曲とアルバムのタイプがあると仮定し、見つかったすべての曲を表示し、次に仕切りを表示し、次に見つかったすべてのアルバムを表示したいとします。
  3. アルバムのカバーのように、ドロップダウンに画像を表示したい。

ここでトピックを読みましたAllow loading images and custom HTML in typehead results
そのトピックからの引用: 「項目とメニュー オプションを組み合わせて使用​​すると、新しいテンプレートを指定できます」が、正しい方法でそれを行う方法がまだわかりません。

ありがとうございました。

4

1 に答える 1