我正在使用jQuery DataTables的服務器端處理模式("serverSide": true
)。我正在使用deferred loading option來優化我的網頁加載時間。DataTables延遲加載列選項
我也在使用columns
選項,但是當我自己定義columns
選項時會有一些衝突。當第一次調用沒有時,它會嘗試查找數據源,這是延遲加載的全部要點。
Uncaught Error: DataTables warning: table id=table - Requested unknown parameter 'id' for row 0. For more information about this error, please see http://datatables.net/tn/4
初始化代碼:
function initialize_table(inital_length)
{
table_options = {
"serverSide": true,
"ajax": {
"url": '/merchant/all/',
"type": 'POST',
"deferRender": true,
// data: JSON.stringify(data),
// contentType: "application/json",
},
// "order": [[0, 'asc']]
"deferRender": true,
"processing": true,
"pageLength": 50,
"deferLoading": inital_length,
"lengthMenu": [ 20, 50, 100, 200, 500 ],
"columnDefs": [
{
// "class": "details-control",
'data': 'gr_id', // response[data]
'name': 'gr_id',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 0,
},
{
'data': "name",
'name': 'name',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 1,
},
{
'data': "address",
'name': 'address',
'orderable': false,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 2,
},
{
'data': "category",
'name': 'category',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 3,
},
{
'data': "chain",
'name': 'chain',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 4,
},
{
'data': "enabled",
'name': 'enabled',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 5,
},
{
'data': 'status',
'name': 'status',
'orderable': true,
'search': {'regex': false, 'value': ''},
'searchable': true,
"targets": 6,
}
],
}
var merchant_table = $("#merchant-table").DataTable(table_options);
}
此錯誤通常意味着數據格式不正確,請參閱更多[here](http://datatables.net/manual/tech-notes/4#Parameter-is-a-string)。如果您將'deferLoading'設置爲正數以及'serverSide:true',則不應在第一次調用時請求數據,否則可能會有其他錯誤導致此錯誤。請顯示您的DataTables初始化代碼和服務器返回的數據。 –
當我沒有定義'columns'或'columnDefs'時沒有引發錯誤(然後它使用它的默認值,通過它的索引引用列。)。 – madhukar93