我正在通过jQuery AJAX加载一个元素,其id为172
。
现在我想对此元素应用自动完成功能。
但是,以下代码无效。
$(document).ready(function(){
$( "#172" ).autocomplete({
minLength: 2,
source: function(request, response) {
var results = $.ui.autocomplete.filter(jsonCities, request.term);
response(results.slice(0, 10));
},
focus: function( event, ui )
{
$( "#172" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#172" ).val( ui.item.label );
$( "#172-id" ).val( ui.item.value );
return false;
}
});
});
我观察到这对任何动态加载的元素都不起作用。我错过了什么?这是正确的方式还是其他方式?
答案 0 :(得分:0)
这样的东西会起作用
$.ajax({
url:"..."
type:"...",
success:function(){
//Add your #172 element and then use autocomplete on it
$( "#172" ).autocomplete({})
}
});
由于当您调用自动完成功能时,您的元素不在DOM上,因此无法获得自动完成行为,请在Ajax调用中将元素添加到DOM后使用。