【发布时间】:2015-06-25 16:22:27
【问题描述】:
所以我一直在努力学习 Twitter 的 typeahead.js,我不得不说,文档还有一些不足之处。我已经尝试了近十几种不同的方法,我发现这些方法可以将预输入功能添加到这个输入中,但我很难过。什么,如果我在下面的代码中遗漏了什么?我在控制台中没有看到任何错误,并且 idNums 似乎包含适当的数据,但我仍然没有看到正确的覆盖。
我的javascript:
var idNums = new Bloodhound({
datumTokenizer: function (datum) { return Bloodhound.tokenizers.whitespace(datum.value);},
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: 'endpoint that returns below json',
});
idNums.initialize();
$('#prefetch .typeahead').typeahead({
hint: true,
highlight: true,
minLength: 1
},
{
name: 'BR_NUM',
displayKey: 'value',
source: idNums.ttAdapter(),
});
我的 HTML:
<div id = "prefetch">
<label>Value: </label>
<input type = "text" name = "Value" class="typeahead" placeholder="ID Number"/>
</div>
这是我的 json 文件:
[{
"BR_NUM":"20512"
},
{
"BR_NUM":"22788"
},
{
"BR_NUM":"22789"
},
{
"BR_NUM":"22790"
},
{
"BR_NUM":"22791"
},
{
"BR_NUM":"22792"
},
{
"BR_NUM":"22793"
},
{
"BR_NUM":"22794"
}
]
编辑:所以如果我理解正确,我的代码在没有 ajax 调用的情况下看起来像这样?还是我删除的内容超出了我应该删除的范围?
$('.typeahead').typeahead({
hint: true,
highlight: true,
minLength: 2,
limit: 8
}, {
name: "main-search",
displayKey: "BR_NUM",
source: 'json url here'
});
【问题讨论】:
标签: javascript json typeahead.js typeahead twitter-typeahead