2016-03-21 9 views
0

次のHTMLコードです:DATATABLE示す間違ったページ番号

<table id="myTable" class="dTable1 contentList table table-bordered" style="z-index: 2; "> 

       <thead id="tableHeader"> 
        <tr id="headerRow"> 
         <th>Time</th> 
         <th>Event</th> 
         <th>Description</th> 
        </tr> 
       </thead> 
       <tbody> 
       </tbody> 
      </table> 

私はJavaScriptコードの下に使用して開いたポップアップでテーブルを初期化しています:

showHistory = function (contentID) { 
      debugger; 
      var auditRes; 
      //var oTable = $('#AuditListtable').dataTable(); 
      //oTable.fnDestroy(); 
      //alert("outside"); 
      $('#AuditListtable').dataTable({ 
       "sAjaxSource":SERVERURL?contentId=' + contentID, 
       "aoColumns": [ 
      { "mData": "AccessDate" }, 
      { 
       "mData": "EventDescription", 
       "bSortable": false 
      }, 
      { 
       "mData": "IPAddress", 
       "bSortable": false, 
       "mRender": function (data, type, row) { 
        debugger; 
        return '<td> <span title="' + data + '">Played By: ' + row.FirstName + ', IP Address: ' + data + '</span></td>'; 
       } 
      } 
       ], 
       "paging": true, 
       "sDom": '<"top"p<"clear">>rt', 
       "sPaginationType": "full_numbers", 
       "searching": false, 
       "bFilter": false, 
       "processing": true, 
       "bServerSide": true, 
       "order":true, 
       "sServerMethod": "POST", 
       "bAutoWidth": false, 
       "iDisplayLength": 8 


      }); 
      $('#historyPopup').modal('show'); 

     } 

データがポップアップに移入されます。現在、合計9レコードありますが、ページ番号は5ページになります。別のページをクリックすると、前のレコードが表示されます。テーブルはリフレッシュされません。

enter image description here

+1

bServerSide ":true"を使用してサーバー側の処理を有効にしました。あなたの応答が間違っている可能性があります。実際にサーバー側の処理が必要な場合は、応答に「iTotalRecords」:「9」、「iTotalDisplayRecords」:「9」などの応答を含める必要があります。 JSONレスポンスをサーバーから送信してください。 –

+0

@ Gyrocode.com問題は応答でした。 iTotalDisplayRecordsの代わりにiTotalRecordsを送信していました。また、sEchoの値はハードコードされていました。あなたは答えとしてあなたの提案を入れてください。 –

答えて

0

あなたは"bServerSide": trueとサーバー側の処理を有効にしています。あなたの応答が間違っている可能性があります。

あなたが実際にサーバー側の処理をしたい場合は、あなたの応答は、何かのようにする必要があります:sEchoはリクエストからsEchoパラメータの値を持っている必要があり

{ 
    "sEcho": 1, 
    "iTotalRecords": 9, 
    "iTotalDisplayRecords": 9, 
    "aaData": [ 
     // ... skipped ... 
    ] 
} 

iTotalRecordsは前に、すべてのレコードの数ですフィルタリング、iTotalDisplayRecordsはすべてのレコードの番号ですフィルタリングの後。

詳細については、server-side processingを参照してください。

関連する問題