3

slickgrid で追加または編集/更新した行を特定する方法を教えてください。Jquery AJAXを使用してDBにデータを保存しようとしています。私はデータビューオプションを使用しています。新しく追加/更新された行のみを保存/更新する必要があります。

前もって感謝します。

4

3 に答える 3

3

最初に確認する必要があるのは、各行がサーバー側からの一意の ID (たとえば、データベースからの行の主キー値) で初期化されていることです。

次に、次のように grid.onAddNewRow イベントを使用できます。

var editedRows = {}
grid.onAddNewRow.subscribe(function(e, args) {
            var item = args.item;
            editedRows[item.id] = item;
        });

ユーザーが保存ボタンをクリックすると、editedRowsオブジェクトがサーバーにポストされるだけです。PHP スクリプトは、送信された行 ID を反復処理し、dvs 内の変更されたすべての行を更新できます。

注: 私のコードはテストされていませんが、http://mleibman.github.com/SlickGrid/examples/example3-editing.html をチェックて、slickgrid での編集を理解する必要があります。

于 2011-01-28T10:29:45.147 に答える
3

onCellChange イベントをグリッドに簡単にフックできます。

grid.onCellChange = function (row, col, dataRow) {
   //  enter your code here
}

(row,col) は現在のセルで、dataRow にはその行のデータが含まれます。

于 2011-02-02T08:34:48.140 に答える