我正在使用 jQuery UI 自动完成插件。
一切正常,但我想在最后添加一个框,上面写着“查找更多结果”。
我正在尝试使用内置open
事件将框附加到<ul>
opens 中,但该事件永远不会触发(自动完成列表打开并且功能齐全,唯一的问题是 open 事件永远不会触发。)
我的代码如下所示:
$( "#q" ).autocomplete({
source: function(request, response) {
var results = $.ui.autocomplete.filter(userFriends, request.term);
response(results.slice(0, 4));
},
minLength: 2,
appendTo: '.searchbox',
select: function (event, ui){
window.location.href = '/u/'+ ui.item.value;
return false;
},
focus: function (event, ui) {
return false;
},
open: function (event, ui){
console.log("AutoComplete Opened");
}
})
.data('autocomplete')._renderItem = function(ul, item) {
return $('<li>')
.data('item.autocomplete', item)
.append(
'<a>' +
'<div>' +
'<div><img src="' + item.img + '" alt="" width="50" onerror="onErrorFixProfileImage(this)"/></div>' +
'<div>' + item.label + '</div>' +
'</div>' +
'</a>'
)
.appendTo(ul);
};
有谁知道这个事件不会触发的原因?
谢谢!