2

データを生成するためにDataTablesCodeigniterライブラリでjQueryDataTablesを使用しています。このライブラリは、DataTablesが提供するphpスクリプトの移植版です。

このスクリプトでは、いくつかのオプションしか決定できません。

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); 
}

editやなどの「行固有の」関数の列を追加できるようにしたいのですdeleteが、DataTableライブラリはデータのマッサージされた配列の提供をサポートしていません。

次のオプションはjQueryのようです。行に関する一意のIDを格納する1つの非表示の列が必要であると考えてから、行固有の関数の列を追加します。それは正しいと思いますか?

他の提案やより良いアプローチを聞くのは素晴らしいことです。

ありがとう、ピーター

4

1 に答える 1

3

私はいくつかの CI プロジェクトで DataTables を使用しましたが、あなたと同じアプローチは取りませんでした。どの種類のラッパー ライブラリも使用しておらず、代わりに jQuery 経由でオプションを渡しています。javascript ライブラリの完全なオプションを提供しない場合、CI ライブラリの中間層が邪魔になる可能性があるため、このアプローチの方が良い場合があると思います。

行固有の機能をさまざまな方法で提供できます。編集列または削除列を作成し、この行のコントローラー メソッドへのリンクを指定します (例: '/mycontroller/edit/123')。または、各 ID の値と「アクション」ボタンまたはフォームの選択を含むチェックボックス列を用意します。

データのサイズに応じて、通常は DataTables の ajax 機能を利用し、json を介して列データをロードします。データに html や javascript を含める場合は、必ず正しくエスケープしてください。

于 2011-02-12T09:31:59.133 に答える