这是我的javascript:
<script type="text/javascript">
$(document).ready(function () {
var people = new Bloodhound({
datumTokenizer: function(d) { return Bloodhound.tokenizers.whitespace(d.tokens); },
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: [
{
fullName: '',
"],
},
{
fullName: 'Marijus Merkevicius',
tokens: ["Marijus Merkevicius", "marijusm"],
},
]
});
// initialize the bloodhound suggestion engine
people.initialize();
// instantiate the typeahead UI
$('#${id }').typeahead(null, {
displayKey: 'fullName',
source: people.ttAdapter(),
});
});
</script>
当我使用return Bloodhound.tokenizers.whitespace(d.fullName);
时,自动完成工作正常,但是当我返回d.tokens时,它根本不会。我在这里做错了什么?
答案 0 :(得分:2)
Tokens是一个数组,它期待一个字符串。您可以尝试d.tokens.join(' ')
,但不确定是否需要围绕d的jQuery选择器($
)。