我正在使用带有 jQuery ajax 的 bootstrap typeahead,我们将其称为 FILTER#1。就我而言,像“great tank”或“greattank”这样的 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.
}
});
谢谢。