我需要在搜索时对多个自动提示进行一些输入。 搜索字符串由类别,可选标准和值组成。
示例:Category.Criteria
我尝试使用自动完成的jquery,一旦用户选择一个类别并输入“。”,autosuggest类别的第一级工作正常。 我们应该显示为该类别配置的Criteria。
当用户选择一个类别并键入“。”时,第二组自动建议不会立即出现,但是一旦我们从输入区域聚焦并返回,它就会出现。
她是代码https://jsfiddle.net/krishnanpb/gh32nad6/1/
步骤: 1.选择一个类别,然后输入“。”,移出输入区域并重新聚焦第二组建议。
$(document).ready(function() {
BindControls();
});
function BindControls() {
var Categories = [
"Customer",
"Equipment",
"Link",
"Location",
"Network",
"Service",
"Termination"];
$('#tags').autocomplete({
source: Categories,
minLength: 0,
scroll: true
}).focus(function() {
$(this).autocomplete("search", "");
});
$('#tags').bind('keypress', function(e) {
var code = (e.keyCode ? e.keyCode : e.which);
if(code == 46) {
console.log(". pressed");
var Criteria = [
"name",
"id"];
}
$( "#tags" ).autocomplete({
source: Criteria
});
});
}
html:
标签:
答案 0 :(得分:0)
You should use the KeyUp event. I also forced it to re-focus on the input after changing the source.
$( "#tags" ).keyup(function( event ) {
if(event.which == 190) {
console.log(". pressed");
var Criteria = ["name", "id"];
$('#tags').autocomplete({ source: Criteria });
$('#tags').focus();
}
});