【发布时间】:2019-08-26 13:00:30
【问题描述】:
我在我的应用程序中实现了自动完成功能,并使用 azure 搜索建议。但目前如果在行之间找到匹配项,它会给出建议。但我想搜索它以给定术语开头,比如如果我输入 What is then it should
- 名字是什么
- 第二个名字是什么
- 第三个名字是什么
但目前它正在回归
- 顺便说一句
- 名字是什么
- 第二个名字是什么
请看下面我正在使用的代码
$("#autocomplete").autocomplete({
source: "/home/suggest?username=myname&",
minLength: 3
});
$.ui.autocomplete.filter = function (source, term) {
var matcher = new RegExp("^" + $.ui.autocomplete.escapeRegex(term), "i");
return $.grep(source, function (value) {
return matcher.test(value.label || value.value || value);
});
};
【问题讨论】:
-
为了清楚起见,你想用这个逻辑做什么?
return matcher.test(value.label || value.value || value); -
@Taplar 感谢您的快速回复。我也对这条线感到困惑......当我在谷歌上搜索时,我发现了这个建议。
-
您能否格式化您的问题,以便对预期结果和实际结果的解释清楚?也许使用引号、换行符或其他什么?否则很难理解你的问题。另外,请分享调用您的搜索服务的代码。看起来这段 JS 代码正在调用您自己的 API,而后者又调用 Azure 搜索。
-
@BruceJohnston 你能建议我吗?我已经格式化了我的问题
-
@Ajay 请分享调用 Azure 搜索的代码(无论 /home/suggest 后面的代码是什么)。这样我们就可以知道您调用了哪个 API 以及您传递了哪些参数。
标签: jquery jquery-ui jquery-ui-autocomplete azure-cognitive-search