jquery 的autocomplete的匹配规则是包含规则,就是只要待选项中包含你输入的字符,就给你提示出来。
但是实际需求,想从头部开始匹配。
假如有arr=[12,2123,123,3312];
我输入12,我只想匹配出12和123来,但是autocomplete是包含匹配,只要包含12的都给你匹配出来,就把这4个全匹配出来了。
方法如下“
$.ui.autocomplete.filter = function (array, term) { var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex(term), "i"); return $.grep(array, function (value) { return matcher.test(value.label || value.value || value); }); };
增加该筛选方法,进行匹配筛选。