0

無限ページングを行うように設定された AJAX select2 ドロップダウン メニューがあります。私がやりたいことは、結果の最初のページをバックグラウンドでロードして、ユーザーがドロップダウンをクリックするとすぐに、最初の AJAX を待つのではなく、一連のオプションをすぐに利用できるようにすることです。電話。

これを行う方法を Google で検索すると、最初の選択を設定しようとする結果しか表示されません。これは私がやりたいことではありません。エンドポイントから結果の最初のページをプリロードして、ユーザーが AJAX 呼び出しが返されるのを待つ代わりにすぐにデータを表示するようにしたいだけです。これは可能ですか?

私のselect2セットアップコードは以下の通りです:

$(".my-class-identifier").select2({

        ajax: {
            cache: true,
            dataType: "json",
            delay: 500, 
            data: function(params, page) {

                return {
                    name: params,
                    otherParams: $(this).data("other-params")
                    page: page                      
                };

            },
            results: function(data, page) {

                return {
                    /* The server returns no data after all the pages have been returned. */
                    more: data && data.length > 0,
                    results: data
                };

            },
            type: "GET",
            url: function() {
                if ($(this).data("url")) {
                    return $(this).data("url");
                } else {
                    return DEFAULT_ENDPOINT;
                }
            }
        },
        allowClear: true,
        minimumInputLength: 0,
        placeholder: "Search for some data..."          
    });
4

2 に答える 2