我有一个简单的自动完成功能,可以搜索对象数组。它工作正常,但我想覆盖用户正在搜索的内容。
我想在搜索中添加其他输入值。例如,如果他们搜索了#34; cat",我想追加$('#input2').val()
,以便他们的搜索成为" cat dog" (不改变实际< input>的值)。
这似乎是一件容易的事,但我无法在不覆盖整个搜索方法的情况下弄清楚如何做到这一点。
现有代码:
$("#search").autocomplete({
source: data,
appendTo: '#admin-results'
}).data("ui-autocomplete")._renderItem = function(ul, item) {
return $('<li>')
.append('<div>' + item.label + '</div>')
.appendTo(ul);
};
答案 0 :(得分:2)
以下将使用source
功能执行您的要求var terms = ["c++", "java dog", "php dog", "coldfusion", "javascript dog", "asp dog", "ruby"]
$("#autocomplete").autocomplete({
source: function(req, response) {
var term = req.term + ' dog';// adjust to a dom value or whatever
var res = terms.filter(function(item) {
return item.toLowerCase() === term.toLowerCase()
});
response(res);
}
});
也相应调整滤镜功能。这只是绝对匹配的粗略
的 DEMO 强>
答案 1 :(得分:0)
1.来自#admin-results的val。将val放入变量&#34; a&#34;。
2.a = a + desiredVal
输入新的&#34; a&#34;进入#admin- results