我只想从用户输入的匹配字符开始显示结果。我想避免它们发生在中间。我怎么能在预先做到这一点。
这是我的js代码:
var cities = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: '/getcities'
});
$('#city').typeahead({
hint: true,
highlight: true,
minLength: 3,
limit: 10
}, {
name: 'cities',
source: cities
});
答案 0 :(得分:0)
您必须重新定义datumTokenizer。这是一个示例,假设您的自动完成值是针对字段" key"在一个对象数组
datumTokenizer: function(d){
var tokens = [];
var stringSize = d.key.length;
for (var i = 0; i<= stringSize; i++){
tokens.push(d.key.substr(0, i));
}
return tokens;
},