アクション列を含む非常に基本的な jqGrid テーブル (#list) があります。カスタム関数を追加する方法を何とか理解しましたが、その内容を複製するコードを生成する方法がわかりません (可能であれば addrowData メソッドを使用)。これまでの私のコードは次のとおりです。
(...)
gridComplete: function () {
var grid = jQuery("#list");
var ids = grid.jqGrid('getDataIDs');
//console.log(ids);
for (var i = 0; i < ids.length; i++) {
var rowId = ids[i];
var cbutton = "<input style='height:22px;width:75px;' " + "type='button' value='Duplicate' " + "onclick=\"Duplicate('#list'," + rowId + ");\" />";
grid.jqGrid('setRowData', rowId, {
action: cbutton
});
}
(...)
カスタム関数の複製:
Duplicate = function (table, Id) {
console.log(table);//#list
console.log(Id);//whatever row Id clicked
//need a way to duplicate the row
}
すべての値を引数として関数に渡し、addrowData を使用して新しい Row を作成し、foreach を実行して行にデータ (myData) を入力することができると思います。
手がかりはありますか?