[英]jQuery DataTables loading a client-side array of objects
我正在使用 jQuery 中的 the.data() function 將從服務器返回的一組記錄附加到我頁面上的 DOM 元素。 記錄存儲為對象數組。 代碼如下:
//Attached returned data to an HTML table element
$('#measTable').data('resultSet', resultSet);
//Get stored data from HTML table element
var results = $('#measTable').data('resultSet');
//Construct the measurement table
data_table = $('#measTable').dataTable({
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bProcessing": true,
"bDeferRender": true,
"aaData": [ results ],
"aoColumns": [
{ "mDataProp": "Field1" },
{ "mDataProp": "Field2" },
{ "mDataProp": "Field3" },
{ "mDataProp": "Field4" }
]
});
然后我從元素中獲取數據並繼續將其加載到數據表中。 但這似乎不起作用,並且總是從第 0 行的數據源返回錯誤 Requested unknown parameter "`Field1" 。 是否可以以這種方式將數據加載到數據表中?
更新:
這是 object 數組的結果示例
results =
0: Object
Field1: "2011/04/23"
Field2: 8
Field3: "Hello"
Field4: "World"
__proto__: Object
1: Object
Field1: "2011/03/25"
Field2: 6
Field3: "Hello"
Field4: "Everyone"
__proto__: Object
...etc.
DataTables 的開發人員 Allan 能夠在 DataTables論壇的以下帖子中回答我的問題。 萬一鏈接不起作用,問題就變成了一個簡單的語法錯誤。
而不是"aaData": [ results ],
它需要是"aaData": results,
。
謝謝你的幫助艾倫。
好吧,aaData(顧名思義,使用匈牙利表示法)需要一個 arrays 數組,所以如果你給他取一個對象數組,這就是它抱怨的原因。
將以下內容添加到您的定義中:
$('#measTable').dataTable({
...
"columns": [
{ "data": "field1" },
{ "data": "field2" },
{ "data": "field3" }
]
});
您應該將表列與列數組匹配。
而已!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.