2016-07-25 52 views
1

我有一個datatable.I試圖通過AJAX .The響應負載包含數據,但它沒有顯示數據found.My代碼如下數據表顯示零行即使得到的迴應

<table id="user_list_table"> 
    <thead> 
     <tr>  
     <th>name</th> 
     <th>phone</th> 
     <th>email</th> 
     <th>address</th> 
     </tr> 
    </thead> 
<tbody> 
</tbody> 
</table> 

給予我的JS包含

$(document).ready(function() { 
    var MY_AJAX_ACTION_URL = "/social/index.php?id=4&userform[action]=datatable&userform[controller]=User"; 
    $('#user_list_table').dataTable({ 
      "autoWidth": false, 
      "bPaginate": false, 
      "searching": false, 
      "ordering": true, 
      "oLanguage": { 
       "sZeroRecords": "No data Found", 
       "sProcessing": 'processing' 
      }, 
      "bInfo": false, 
      "aoColumns": [ 
       {'mData':'name','bSortable': true}, 
       {'mData':'phone','bSortable': true}, 
       { 'mData':'email','bSortable': true }, 
       { 'mData':'address','bSortable': true} 
      ], 
      "sAjaxDataProp": "", 
      "bProcessing": true, 
      "bServerSide": true, 
      "sAjaxSource":MY_AJAX_ACTION_URL 
     }); 

}); 

我得到了以下回應

{"iTotalRecords":2,"iTotalDisplayRecords":{"data":[{"name":"xyz","phone":"678654454","email":"[email protected]","address":"ytruye"},{"name":"abc","phone":"678654454","email":"[email protected]","address":"ytruye"}]}} 
+0

您的表格是否顯示任何錯誤或「找不到數據」? –

+0

這不是錯誤..我在表中包含零記錄時寫了消息。 –

回答

1

服務器響應,一點點向上無緣。你有

{ 
    "iTotalRecords": 2, 
    "iTotalDisplayRecords": { 
    "data": [ 

iTotalDisplayRecords應該是過濾的記錄(當然iTotalRecords的總記錄數)。如果您更正到

{ 
    "iTotalRecords": 2, 
    "iTotalDisplayRecords": 2, 
    "data": [ 
    { 

響應,並刪除"sAjaxDataProp": "",然後它的工作原理 - >http://jsfiddle.net/2o6eLt2z/

所以,問題是服務器端,有糾正問題客戶方,因爲JSON行不通沒有可能的方式將dataTables作爲服務器端的來源。您可以在ajax: { url: ...}中使用serverscript,並在dataSrc回調中返回更正的JSON,但在我看來,您希望使用服務器端處理。

+0

謝謝你davidkonrad ..它正在工作。 –

相關問題