2015-05-09 55 views
0

我正在关注this link在jQuery数据表中实现服务器端分页。无法重新初始化DataTable

我有索引视图,它用jQuery数据表加载部分视图。这部分视图调用asp.net-mvc控制器并返回应该注入jquery数据表的json数据。但在最初的渲染我的索引视图我得到以下错误

DataTables warning: table id=dataTables-table - Cannot reinitialise DataTable 

所以我想这里的jQuery数据表被初始化

"bRetrieve": true, 

但没有帮助添加到局部视图。

局部视图jq。数据表初始化看起来像这样

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#dataTables-table').dataTable({ 
      "bRetrieve": true, 
      "bProcessing": true, 
      "bServerSide": true, 
      "sAjaxSource": "/MyController/MyAction", 
      "sServerMethod": "POST", 
      "aoColumns": [ 
      { "mDataProp": "String A" }, 
      { "mDataProp": "String B" },   
      { "mDataProp": "String C" }], 
      "fnRowCallback": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
       var birthday = new Date(parseInt(aData.Birthday.replace("/Date(", "").replace(")/", ""), 10)); 
       $('td:eq(3)', nRow).html(birthday.getMonth() + 1 + "/" + birthday.getDate() + "/" + birthday.getFullYear()); 
      } 
     }); 
    }); 
</script> 

我在这里失踪了什么?

更新:

[HttpPost] 
public JsonResult MyAction(JQueryDataTablesModel model) 
{ 
    int totalRecordCount; 
    int searchRecordCount;  
    var data = GetMyData(model.iDisplayStart, model.iDisplayLength, model.GetSortedColumns(), 
       out totalRecordCount, out searchRecordCount, model.sSearch); 

    return Json(new JQueryDataTablesResponse<MyObject>(data, totalRecordCount, searchRecordCount, model.sEcho));   
    } 
+0

我们可以看到这个调用“sAjaxSource”的代码:“/ MyController/MyAction”吗? – pjobs

+0

当然,这是。 – user1765862

回答