以下是我回复的回复(它的工作):
{"matches":[
{"_core_product_id":"648","finish":"Distressed Green\/Antique Bronze","COUNT(*)":"1"},
{"_core_product_id":"157","finish":"Nightingale Green","COUNT(*)":"1"}],
"count":2}
我想在下拉列表中显示每个类别类别和COUNT(*)。我没有立即需要,但我可能希望并在自动填充字段之外的其他地方使用_core_product_id。
这是我的自动完成jquery代码:
.autocomplete({
source: function( request, response ) {
$.getJSON( 'controllers/clean/ajax/search.php', {
'fieldid_tableid_type' : this.element[0].id,
'term': extractLast( request.term )
//}, response(['red', 'green', 'blue']) );
},
response );
},
search: function() {
// custom minLength
var term = extractLast( this.value );
if ( term.length < 2 ) {
return false;
}
},
focus: function() {
// prevent value inserted on focus
return false;
},
select: function( event, ui ) {
var terms = split( this.value );
// remove the current input
terms.pop();
// add the selected item
terms.push( ui.item.value );
// add placeholder to get the comma-and-space at the end
terms.push( '' );
this.value = terms.join( '| ' );
return false;
},
delay: 750
});
我无法弄清楚在哪里放置&#34;响应&#34;以及如何使用它。任何帮助都会很棒。我知道还有其他问题(很多),但我还没有找到解决我问题的问题。感谢。
我注意到jquery ui文档显示了在自动完成内部使用的响应。而一些例子显示了其他地方(例如,在源内)。 jQuery UI文档:http://api.jqueryui.com/autocomplete/#event-response
答案 0 :(得分:0)
response
是一个回调函数,您需要传递远程加载的值
.autocomplete({
source: function( request, response ) {
response($.getJSON( 'controllers/clean/ajax/search.php', {
'fieldid_tableid_type' : this.element[0].id,
'term': extractLast( request.term )
//}, response(['red', 'green', 'blue']) );
}));
},
search: function() {
// custom minLength
var term = extractLast( this.value );
if ( term.length < 2 ) {
return false;
}
},
focus: function() {
// prevent value inserted on focus
return false;
},
select: function( event, ui ) {
var terms = split( this.value );
// remove the current input
terms.pop();
// add the selected item
terms.push( ui.item.value );
// add placeholder to get the comma-and-space at the end
terms.push( '' );
this.value = terms.join( '| ' );
return false;
},
delay: 750
});