handlebars テンプレートを使用して、bootstrap-typeahead によってレンダリングされるアイテムをカスタマイズしたいと思います。コードを見ると、デフォルトの項目は のようです<li><a href="#"></a></li>
。
アイテムをレンダリングするためにハンドルバー テンプレートを使用したいとします。
この方法でrender関数を再定義する必要があると私は考えています(1)。
私の質問は
、bootstrap-typeahead.js v2.1.0` で (1) をどのように使用すればよいですか?
(2) 渡すオプションに関するコード$.fn.typeahead
と、(3) ハンドルバー/口ひげのテンプレートです。
(1)
var renderItem = function (ul, user) {
// user is the Backbone.Model
return $('<li></li>')
.data('item.autocomplete', user)
.append(autocompleteItemTemplate(user.toJSON()))
.appendTo(ul);
};
(2)
element.typeahead({
minLength: 3,
source: function () {
var users = app.userCollection;
users = _.map(users, function (user) {
return user.get('first_name') + ' ' + user.get('last_name');
});
return users;
}
});
(3)
<a>{{ first_name }} {{ last_name}}</a>