我已经搜索了很多时间,但没有结果。 我正在尝试使用Jquery UI自动完成插件。 我正在使用组合框模式(此处提供的示例:http://jqueryui.com/demos/autocomplete/#combobox)。 从我设法理解,更改此代码(从示例)
var matcher = new RegExp($.ui.autocomplete.escapeRegex(request.term), "i" );
用这个
var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex(request.term), "i" );
确保我将通过第一个单词中的第一个字母自动完成。 但是,假设我有一系列选项,如下所示:
<option value="">Auto Skin</option>
<option value="">Score</option>
并输入字母's',它会自动只显示“分数”选项。
如何更改正则表达式以获得两个结果,因为选项“自动皮肤”有单词“皮肤”,也以字母“s”开头? 谢谢!
答案 0 :(得分:2)
使用正则表达式模式^
来匹配字符边界,而不是匹配字符串开头的正则表达式模式\b
。
var matcher = new RegExp("\\b" + $.ui.autocomplete.escapeRegex(request.term), "i" );
更多信息here。