0

FCBKcomplete と呼ばれるこのオートコンプリート プラグインを使用しており、その作品は魅力的です。私の唯一の問題と懸念は、ドロップダウンで結果を取得するために入力に文字を入力すると、すべての結果が JSON 応答として返され、その応答が検索されることです。ドロップダウンに結果を表示します。

つまり、次の URL が私の URL であるとします。

http://this.com/usersAPI.do

検索クエリは次のようになります。

select * from user_table 

リクエストがこの URL に送信されると、すべての結果が返され、サイズはまったく小さくありません。

私が探しているのは、入力フィールドに入力した文字を検索できる方法です。したがって、次のような 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 応答が軽くなり、サーバーの負荷が軽減されます。

だから私を助けてください、ありがとう

4

1 に答える 1

0

こんにちは、このようなものを使用できます。

    $( "#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 );
    };
于 2013-04-18T06:04:07.267 に答える