【发布时间】:2017-11-03 12:09:13
【问题描述】:
我在 HTML 输入中有此代码用于自动完成:
$("#myinput")
.bind("keydown", function(event) {
// don't navigate away from the field on tab when selecting an item
if (event.keyCode === $.ui.keyCode.TAB
&& $(this).data("autocomplete").menu.active) {
event.preventDefault();
}
})
.autocomplete({
minLength: 0,
source: function(request, response) {
var results = [],
selectionStart = this.element[0].selectionStart
term = extractLast(request.term.substring(0, selectionStart));
if (term.length > 0) {
console.log(term);
if(/*input has string "where"*/)
results = $.ui.autocomplete.filter(table1, term);
else
results = $.ui.autocomplete.filter(table2, term);
}
response(results);
},
focus: function() {
return false; // prevent value inserted on focus
},
select: function(event, ui) {
var terms = split(this.value.substring(0, this.selectionStart));
terms.pop(); // remove the current input
terms.push(ui.item.value); // add the selected item
this.value =
$.trim(terms.join(" ") + this.value.substring(this.selectionStart)) + " ";
return false;
}
});
我想要做的是,如果输入在某处有字符串“where”,那么它将从 table1 加载自动完成,否则它将从 table2 加载。如何检查输入是否有该字符串?提前致谢。
【问题讨论】:
-
你可以使用
typeofdeveloper.mozilla.org/en/docs/Web/JavaScript/Reference/…查看它 -
你的意思是输入框中的值?
-
@MohideenibnMohammed 是的。
-
检查我的答案..你可以使用 indexof 找到它
标签: javascript jquery html events html-input