我有一个非常基本的jqGrid表(#list),其中包含一列:actions。 我以某种方式弄清楚如何添加自定义函数,但不知道如何生成代码来复制其内容(如果可能的话,使用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:
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以使用data(myData)填充行。
任何线索?
答案 0 :(得分:0)
以下是我发现自己的解决方案,效果很好:
Duplicate = function (table, Id) {
newId = null;
myData = jQuery(table).getLocalRow(Id);//or getRowData(Id)
jQuery(table).jqGrid('addRowData', newId, myData, "after", Id);
}