在下面的jQuery中,每次用户键入文本框时都会显示警报“fire”,但是当用户键入与“test”匹配的字母时,应该触发警报“fire”。如何更新下面的代码,以便在进行匹配时触发警报,而不是在用户键入时每次触发?
选择一个项目(开始时输入“j”):$(function() {
$( "#project" ).autocomplete({
minLength: 0,
source: "/getfile?param=testerurl",
focus: function( event, ui ) {
$( "#project" ).val( ui.item.label );
return false;
},
})
.data( "autocomplete" )._renderItem = function( ul, item ) {
alert('fire');
};
});
这是
返回的json/ GETFILE?PARAM = testerurl
[{ "value": "test","label": "Sizzle JS","desc": "a pure-JavaScript CSS selector engine","icon": "sizzlejs_32x32.png"}]
答案 0 :(得分:0)
_renderItem用于编辑/操作/设置服务器返回的json样式,因此每次返回响应时都会触发。
jquery reference is here => http://jqueryui.com/autocomplete/#custom-data
这里有一个工作示例=> http://jsfiddle.net/GtjEv/
.data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.label + "<br>" + item.desc + "</a>" )
.appendTo( ul );
}