我正在尝试使用Typeahead.js设置自定义模板。
我的代码如下:
它能正常运行,但模板设置被忽略了 - 我仍然得到默认的下拉菜单。我做错了什么吗?
编辑:我还尝试过:
这段文字的意思是:“出现了一个错误:对象#的属性'suggestion'不是一个函数。”
我的代码如下:
var countries = new Bloodhound({
datumTokenizer: function(d) {
return Bloodhound.tokenizers.whitespace(d.value);
},queryTokenizer: Bloodhound.tokenizers.whitespace,
limit: 100,
remote: {
url: 'http://www.domain.com/json.php?action=countries&q=%QUERY'
}
});
countries.initialize();
$('.lang').typeahead(null, {
name: 'countries',
source: countries.ttAdapter(),
template: [
'<p class="lang-id">{{lang_id}}</p>',
'<p class="value">{{value}}</p>'
].join(''),
engine: Hogan
});
它能正常运行,但模板设置被忽略了 - 我仍然得到默认的下拉菜单。我做错了什么吗?
编辑:我还尝试过:
$('input').typeahead(null, {
name: 'countries',
displayKey: 'value',
source: countries.ttAdapter(),
templates: {
empty: [
'<div class="empty-message">',
'no results found',
'</div>'
].join('\n'),
suggestion: '<p><strong>{{value}}</strong> – {{id}}</p>'
},
engine: Hogan
});
这段文字的意思是:“出现了一个错误:对象#的属性'suggestion'不是一个函数。”