[英]Autocomplete AJAX request based on input instead of returning all results
我正在使用一個名為FCBKcomplete的自動完成插件,它的工作方式很吸引人。 我唯一的問題和擔憂是,很明顯(這就是我的想法),當我在輸入中輸入字符以在下拉列表中獲取結果時,所有結果都將作為JSON響應返回,然后將搜索該響應在下拉菜單中顯示我的結果。
換句話說,請說以下是我的網址:
http://this.com/usersAPI.do
搜索查詢將類似於:
select * from user_table
當請求發送到該URL時,所有結果都會返回,並且大小不會很小。
我正在尋找的是一種可以搜索在輸入字段中輸入的字符的方式。 所以這樣的網址:
http://this.com/usersAPI.do?name=?
這樣執行的查詢就像
select * from user_table where name like xxx
xxx是我到目前為止輸入的字符。 所以輸入的下一個字符是y,查詢更改為
select * from user_table where name like xxxy
等等
這樣可以減輕JSON響應,減少服務器負載。
所以請幫幫我,謝謝,
嗨,您可以使用類似這樣的東西。
$( "#fieldId").autocomplete({
source:
function( request, response ) {
$.ajax({
url: "test.do",
data : {"searchText":request.term}
context: document.body
}).done(function() {
response( $.map( data.dropValues, function( item ) {
var returnObj = new Object();
returnObj['label'] = item.id + '--' + item.value;
}
});
},
minLength: 1,
mustMatch:true,
autoSelect :true,
delay:0,
}).data( "autocomplete" )._renderItem = function( ul, item ) {
var html = '<li><a>' + item.label;
html += '</a></li>';
return $(html).data('item.autocomplete', item).appendTo( ul );
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.