我不知道修改下面的代码会向我显示带有输入字符的开始这个词。例如:如果我键入E或e,它会显示“Electrical,Electronics ,机械“,但我只想要”电气,电子“显示。如何做到这一点?
我正在使用jquery autocomplete插件。
source: function(request, response) {
var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i");
response(select.children("option").map(function() {
var text = $(this).text();
if (this.value && (!request.term || matcher.test(text)))
return {
label: text.replace(
new RegExp(
"(?![^&;]+;)(?!<[^<>]*)(" +
$.ui.autocomplete.escapeRegex(request.term) +
")(?![^<>]*>)(?![^&;]+;)", "gi"
), "<strong>$1</strong>"),
value: text,
option: this
};
}));
答案 0 :(得分:9)
在Javascript RegExp中,^
表示 startsWith
:
var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex(request.term), "i");