Jquery自动完成renderItem不工作。1.12.1
我对JQuery Autocompete renderItem有问题。我的自动完成工作正常,但似乎在收到数据后没有调用Jquery自动完成renderItem不工作。1.12.1,jquery,jquery-ui-autocomplete,Jquery,Jquery Ui Autocomplete,我对JQuery Autocompete renderItem有问题。我的自动完成工作正常,但似乎在收到数据后没有调用.data(“ui Autocomplete”)。\u renderItem。我在运行脚本时没有收到任何错误。我试图console.log(“成功”)但它也不运行。我遗漏了什么吗?jQueryUI上的版本是1.12.1。任何帮助都将不胜感激 html: Jquery: $( function() { $( ".itemCode" ).autocomplete({ sou
.data(“ui Autocomplete”)。\u renderItem
。我在运行脚本时没有收到任何错误。我试图console.log(“成功”)代码>但它也不运行。我遗漏了什么吗?jQueryUI上的版本是1.12.1。任何帮助都将不胜感激
html:
Jquery:
$( function() {
$( ".itemCode" ).autocomplete({
source: function( request, response ) {
$.ajax( {
url: "item-search.php",
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data );
}
} );
},
minLength: 3,
select: function( event, ui ) {
$(this).parent().siblings().children(".itemDescriptionSales").val(ui.item.itemDescriptionSales);
}
}).data("ui-autocomplete")._renderItem = function (ul, item) {
console.log("success");
return $('<li>')
.data( "ui-autocomplete-item", item )
.append( "<a>" + item.itemCode + "<br>" + item.itemDescriptionSales + "</a>" )
.appendTo( ul );
};
} );
$(函数(){
$(“.itemCode”).autocomplete({
来源:功能(请求、响应){
$.ajax({
url:“item search.php”,
数据类型:“json”,
数据:{
期限:request.term
},
成功:功能(数据){
答复(数据);
}
} );
},
最小长度:3,
选择:功能(事件、用户界面){
$(this.parent().sides().children(“.itemDescriptionSales”).val(ui.item.itemDescriptionSales);
}
}).data(“ui自动完成”)。\u renderItem=功能(ul,项目){
控制台日志(“成功”);
返回$(“”)
.data(“ui自动完成项”,项)
.append(“+item.itemCode+”
“+item.itemsdescriptionsales+”)
.附录(ul);
};
} );
好的。如果没有php,我真的无法测试这一点,但我认为正在发生的是您放置console.log()
的代码根本没有启动,因为它位于一个单独的函数中。尝试将此代码移到ajax调用的success函数中。类似于我在下面所做的事情。警告未经测试的代码
$( function() {
$( ".itemCode" ).autocomplete({
source: function( request, response ) {
$.ajax( {
url: "item-search.php",
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data ).data("ui-autocomplete")._renderItem = function (ul, item) {
console.log("success");
return $('<li>')
.data( "ui-autocomplete-item", item )
.append( "<a>" + item.itemCode + "<br>" + item.itemDescriptionSales + "</a>" )
.appendTo( ul );
};
}
} );
},
minLength: 3,
select: function( event, ui ) {
$(this).parent().siblings().children(".itemDescriptionSales").val(ui.item.itemDescriptionSales);
}
})
});
$(函数(){
$(“.itemCode”).autocomplete({
来源:功能(请求、响应){
$.ajax({
url:“item search.php”,
数据类型:“json”,
数据:{
期限:request.term
},
成功:功能(数据){
响应(数据)。数据(“ui自动完成”)。_renderItem=功能(ul,项目){
控制台日志(“成功”);
返回$(“”)
.data(“ui自动完成项”,项)
.append(“+item.itemCode+”
“+item.itemsdescriptionsales+”)
.附录(ul);
};
}
} );
},
最小长度:3,
选择:功能(事件、用户界面){
$(this.parent().sides().children(“.itemDescriptionSales”).val(ui.item.itemDescriptionSales);
}
})
});
好家伙!您可以添加任何html吗?@DerekNolan我刚刚添加了html和JSON输出。
$( function() {
$( ".itemCode" ).autocomplete({
source: function( request, response ) {
$.ajax( {
url: "item-search.php",
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data );
}
} );
},
minLength: 3,
select: function( event, ui ) {
$(this).parent().siblings().children(".itemDescriptionSales").val(ui.item.itemDescriptionSales);
}
}).data("ui-autocomplete")._renderItem = function (ul, item) {
console.log("success");
return $('<li>')
.data( "ui-autocomplete-item", item )
.append( "<a>" + item.itemCode + "<br>" + item.itemDescriptionSales + "</a>" )
.appendTo( ul );
};
} );
$( function() {
$( ".itemCode" ).autocomplete({
source: function( request, response ) {
$.ajax( {
url: "item-search.php",
dataType: "json",
data: {
term: request.term
},
success: function( data ) {
response( data ).data("ui-autocomplete")._renderItem = function (ul, item) {
console.log("success");
return $('<li>')
.data( "ui-autocomplete-item", item )
.append( "<a>" + item.itemCode + "<br>" + item.itemDescriptionSales + "</a>" )
.appendTo( ul );
};
}
} );
},
minLength: 3,
select: function( event, ui ) {
$(this).parent().siblings().children(".itemDescriptionSales").val(ui.item.itemDescriptionSales);
}
})
});