2011-02-11 70 views
2

使用jQuery DataTables和DataTables Codeigniter庫來生成數據。這個庫是DataTables提供的php腳本的一個端口。由Codeigniter供電的jQuery DataTables

該腳本允許我只確定幾個選項。

function datatables() 
{ 
    $table = "purchase_orders"; 
    $columns = array("purchase_order_id", "sequence_id", "order_number", "aid"); 
    $index = "purchase_order_id"; 
    $this->load->library("Datatables"); 
    echo $this->datatables->generate($table, $columns, $index); 
} 

我希望能夠增加一列的一些「行特定」功能,如editdelete,但所提供數據的按摩陣列數據表庫不支持。

看來我的下一個選擇將是一些jQuery。我想我需要有一個隱藏的列存儲關於該行的唯一ID,然後爲行特定的函數添加一列。這看起來合適嗎?

任何其他建議或更好的方法將非常好聽。

謝謝, 彼得

回答

3

我已經使用的DataTable幾個CI項目,但並沒有採取同樣的方法,因爲你 - 我沒有使用任何種類的包裝庫的,而是通過jQuery傳遞選項。我認爲有時候這種方法會更好,因爲如果CI庫中間層沒有提供JavaScript庫的完整選項,它可能會阻礙它。您可以通過多種方式提供特定於行的功能 - 具有編輯列或刪除列,以及指向此行的控制器方法的鏈接(例如'/ mycontroller/edit/123');或者在每個ID和「動作」按鈕或表單選擇的值中添加一個複選框列。

根據數據的大小,我通常使用DataTables的ajax功能並通過json加載列數據 - 如果您的數據中包含html和/或javascript,請務必正確轉義它。

+0

感謝您的回答!您能否告訴我一些如何從CI生成數據表的示例? – Peter 2011-02-13 22:49:48