簡體   English   中英

根據輸入自動完成AJAX請求,而不是返回所有結果

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM