3

私はselct2を使用しており、ajaxでデータをロードしています。結果は限定的ではありませんが、無限にスクロールする必要があります。いくつかのアイデア?

私はこのようなjsonを持っています

{"len":30,"data":[{"value":"223118","type":1,"name":"Peter","language":3},
{"value":"223118","type":1,"name":"John","language":2},
{"value":"223118","type":2,"name":"Mike","language":1},
{"value":"223118","type":1,"name":"George","language":3}
....
]}

そして、私は ajac 読み込みに標準の select2 機能を使用しています:

$( selector ).select2({
        placeholder: "Search",
        minimumInputLength: 1,
        id: function(bond){return {id: bond._id};},
        ajax: {
            //url: $("#area-of-operating_0").attr('data-url'),
            url: 'myurl',
            dataType: 'json',
            quietMillis: 100,
            data: function (term, page) {
                return {
                     page_limit: 10, // page size
                    page: page // page number
                    //q: term
                };
            },

            results: function (data, page) {
                var more = (page * 10) < data.total;
                return {results: data.data, more: more}
            }
        },

        formatResult: selectFormatResult, // see example
        formatSelection: selectFormatSelection
})

問題は、json に 1000 個の要素を含めることができることです。10要素で無限スクロールにしたい

4

1 に答える 1

1

これは、デモselect2で述べたように使用することはできません

リモート サービスを有効にするには、ある種のページング メカニズムをサポートする必要があります...

サーバー側がページングをサポートしていない場合、無限スクロールを有効にすることはできません。

あなたができることは、最初のリクエストで JSON 全体をいくつかの JS 変数に保存することです。次に、ユーザーが下にスクロールしているときに、ローカル変数からさらにいくつかの結果を順次取得できます。これはあなたのためのオプションですか?

于 2013-07-25T12:06:40.130 に答える