2017-02-13 4 views
0

私はデータを使ってテーブルを取得するためにサーバ側の処理(AJAXリクエスト)を使用しています。私は正しいデータを取得しています。ただし、ページネーションは機能しません。左下のテーブル情報には、182のエントリの1〜10が表示され、右下にはページ番号も表示されますが、表には最初のページ自体のすべてのレコードが表示されます。ページネーションが機能していない - データテーブル1.10.9

$(tableId).DataTable({ 
"paging": true, 
"scrollX": true, 
"filter": false, 
"serverSide":true, 
"columns": [ 
{"data":'transaction_id'}, 
{"data":'merchant_id'}, 
{"data":'merchant_provider_id'}, 
{"data":'transaction_uuid'}, 
{"data":'transaction_status_type'}, 
{"data":'transaction_payment_method'}, 
{"data":'transaction_amount'}, 
{"data":'transaction_amount_aud'}, 
{"data":'transaction_aud_exchange_rate'}, 
{"data":'transaction_amount_usd'}, 
{"data":'transaction_usd_exchange_rate'}, 
{"data":'transaction_currency'}, 
{"data":'transaction_created'}, 
{"data":'transaction_processed'}, 
{"data":'transaction_settled'}, 
], 
"ajax": { 
"url": requestUrl, 
"data": values 
} 
}); 

答えて

0

Datatablesでサーバー側処理を使用する場合、サーバー側ではエントリをページに分割して処理します。 ajaxリクエストには、オフセット(開始)とページ長(長さ)のパラメータが含まれます。サーバー側は、これらのパラメーターを使用して、各ページの正しい項目を選択して戻す必要があります。

+0

ありがとうございました。だから、私はAJAXリクエストのパラメータとしてiDisplaylength:10を渡す必要がありますか? – SagarB

+0

私は、パラメータ "iDisplayLength"を自分のデータテーブルの初期化とAJAXリクエストに追加しようとしました。しかし、私のテーブルは、最初のページ自体にすべてのデータ行を表示しています。 – SagarB

+0

まず、私はお詫び申し上げます、iDisplayStartとiDisplayLengthは従来のパラメータで、私はあなたがDatatables 1.10を使用しているのを見ています。これらのパラメータは、単に「開始」および「長さ」と呼ばれます。私はこれを反映するために私の答えを編集しました。第二に、これらのパラメータは、AJAXリクエストでDatablesによってすでに送信されています。要求を処理するプログラムは、これらのパラメータを調べ、返されるエントリの数を制限する必要があります。サーバー側の処理モードでは、DatatablesはAJAX要求によって返されたレコードを表示します。サーバーは、指定された開始および長さの正しいレコードを返さなければなりません。 –

関連する問題