Javascript jQuery自动完成和复制输入字段
当前有一个用于创建内部订单的表单 零件号字段是通过循环此字段创建的Javascript jQuery自动完成和复制输入字段,javascript,jquery,json,autocomplete,Javascript,Jquery,Json,Autocomplete,当前有一个用于创建内部订单的表单 零件号字段是通过循环此字段创建的 <input name="part[]" type="text" value="" class="pn-autocomplete" /> jQuery Autocomplete用于显示描述列表,但在框中输入零件号 <script> $(function() { $( ".pn-autocomplete" ).autocomplete({ source: "pn-json-2.ph
<input name="part[]" type="text" value="" class="pn-autocomplete" />
jQuery Autocomplete用于显示描述列表,但在框中输入零件号
<script>
$(function() {
$( ".pn-autocomplete" ).autocomplete({
source: "pn-json-2.php",
minLength: 2,
focus: function( event, ui ) {
$(this).val( ui.item.pn );
return false;
},
select: function( event, ui ) {
$(this).val( ui.item.pn );
return false;
}
})
.autocomplete( "instance" )._renderItem = function( ul, item ) {
return $( "<li>" )
.append( "<a>" + item.desc + "</a>" )
.appendTo( ul );
};
});
</script>
问题:
只有字段的第一个实例显示条目。所有其他显示类似的下拉列表,但没有文本说明,不允许选择零件
我相信答案很简单,但我不知道我做错了什么 您必须首先覆盖小部件工厂方法。试试这个
$.widget( "ui.autocomplete", $.ui.autocomplete, {
options: {
renderItem: null,
},
_renderItem: function( ul, item ) {
return $( "<li>" )
.append( "<a>" + item.desc + "</a>" )
.appendTo( ul );
},
});
这里有一个例子。不完全是我最后使用的,但非常接近,它突出了我的错误,给了我一些调查的东西。多谢各位。
$(function() {
$( ".pn-autocomplete" ).autocomplete({
source: "pn-json-2.php",
minLength: 2,
focus: function( event, ui ) {
$(this).val( ui.item.pn );
return false;
},
select: function( event, ui ) {
$(this).val( ui.item.pn );
return false;
}
});
});