我对javascript的理解太有限了。我已经通过在这里用另一个jQuery插件覆盖_renderMenu
解决了这个问题:Limit the result in jQuery Autocomplete但是没有使用jQuery UI插件。如何在jQuery UI自动完成上使用限制?
在 jquery-ui.js 中,我修改了此代码以限制结果,但是我想单独保留库代码并在客户端代码中覆盖它。
_renderMenu: function( ul, items ) {
var self = this;
$.each( items, function( index, item ) {
self._renderItem( ul, item );
});
}
建议-search.js:
$("#global-search").autocomplete({
source: response,
minLength: 1,
delay: 100,
select: function (event, ui) {
//bzzz
}
}).data( "autocomplete" )._renderItem = function( ul, item ) {
var imgFilename = item.filename;
imgFilename = imgFilename.replace(/ /g,"_");
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append('<a class="clearfix"><img src="http://localhost/img/' + imgFilename + '" width="40" height="63" />'+
'<div class="ac-menu-item"><div><span class="ac-publish-title">' + item.title + '</span></div><div class="faded">'+item.year+'</div></div></a>' )
.appendTo(ul);
}
}
答案 0 :(得分:1)
最简单的是你的源回调函数来限制它放在返回数组中的项目数。