我正在使用带有jQuery ajax的bootstrap typeahead,我们将其称为FILTER#1。在我的情况下,像“大坦克”或“大坦克”这样的ajax搜索都产生了“Great Tank”ajax结果,但是typeahead是第二次猜测我的结果并且双重滤除(我们将称为FILTER#2)第二个结果因为空间。我的ajax结果也可能与输入的结果完全不同。我需要先输入才能相信所提供的结果是有效的,并且无论确切的小写文本匹配如何都会显示它们。
我想要有以下行为:
(1)工作OOTB,但(2)是我正在寻找的缺失功能。如果我不能有(1)和(2)我可以放弃(1)。
这是一个小提琴示例:http://jsfiddle.net/PE9mN/
$("#title2").typeahead({
source: function( request, response ) {
var mockResults2 = ["Great Tank War",
"Great Train Robbery",
"other random result my server produced"];
response(mockResults2);
// I expect this to display both items regardless of $("#title2").val()
// In my case, the server was smart enough to realize that
// "greattank" may match "great tank"
// and it even added a 3rd value that I want to display.
}
});
感谢。
答案 0 :(得分:11)
如果您将以下选项添加到typeahead:
matcher: function(item) {
return true;
}
然后不会应用“第二次”过滤。
答案 1 :(得分:0)
您可以在初始化时执行此操作,如下所示
//Typeahead autocomplete for address
$('input.typeahead').typeahead({
ajax: {
.....
},
matcher: function () { return true; }
});