我找到了一些示例来显示如何突出显示多个匹配项,例如,如果我输入“艺术设计”,我希望它突出显示为“艺术和设计学位”
以下示例(尽管使用静态数组)是我所追求的:http: //jsfiddle.net/Q4jy9/1/
但是,我不知道如何使它适用于远程 php 数据源。下面是我正在使用的当前代码。每个按键都会将术语发送到我的 php 并从数据库中选择匹配项。
有没有办法可以更改下面的脚本以允许突出显示多个单词/匹配项,或者更改上面链接中的脚本以使用外部数据源?
var termTemplate = "<span class='ui-autocomplete-term'>%s</span>";
$("#f input").autocomplete({
source: "livesearch.php",
open: function(e, ui) {
var origKeyword = $("#f input").val();
var acData = $(this).data('autocomplete');
acData.menu.element.find('a').each(function() {
var me = $(this);
var regex = new RegExp(acData.term, "gi");
me.html(me.text().replace(regex, function(matched) {
return termTemplate.replace('%s', matched);
}));
});
},
select: function(event, ui) {
var keyword = $("#f input").val();
$("#f input").val('');
window.location.href = 'MYURLHERE?VARIABLE=' + ui.item.value;
return false;
},
focus: function(event, ui) {
return false;
}
});