2016-12-13 35 views
1

jQuery DataTables插件支持arrays of objects以及arrays of arrays。從this我可以看到,如果使用對象格式,則會有插件處理的保留鍵。使用多維陣列格式化數據添加行ID /行數據

我需要使用數組格式來保持通過線路發送的數據儘可能小;多次發送密鑰可以大大增加響應負載。

如何將數據添加到需要稍後以編程方式使用的行的數據如果我使用數組數據格式?

+0

您是否考慮過在服務器端進行處理,以便您只請求所需的數據,並且一次只處理一個頁面?這樣你可以使用完全支持這個的對象數組格式。我把這個作爲一個評論,因爲它只是一個建議,我只是沒有遇到一個情況,我的數據足夠小,仍然可以處理所有客戶端,但足夠大的地方Array對象方法有足夠的開銷。 – Adrian

回答

0

您可以將自定義數據作爲JSON編碼字符串作爲數組元素之一傳遞。

然後,您可以使用createdRow選項來定義回調函數,該函數在創建TR元素時將被調用。函數接收TR節點和完整數據作爲參數,因此您可以根據需要對該行執行必要的操作。

+0

嗯 - 這絕對有效。我可以使用JSON中的「額外列」,並使用createdRow回調中的那些列。儘管如此,擁有傳統配置還是很不錯的。我不想每次使用插件時都要編寫樣板回調函數。我提交了github回購請求:https://github.com/DataTables/DataTables/issues/892 – jinglesthula

+0

drawCallback是另一種選擇。它每次完成繪圖時只觸發一次,所以如果你操縱的速度更快,或者讓它自己一次處理所有渲染的行,你可以將它鉤入。 – Adrian