这是我的代码,通过按Enter键为网格添加一行。 所有行都处于添加模式editrow = true。
jQuery("#energy").jqGrid('addRow', { position: "first" });
jQuery("#energy").jqGrid('bindKeys', {
"onEnter": function (rowid) {
jQuery("#energy").jqGrid('addRow');
}
});
在添加行时,您需要指定prametr editrow = false吗?
答案 0 :(得分:1)
不幸的是,似乎code for addRow
始终将新行设置为编辑模式:
addRow : function ( p ) {
...
if(p.useFormatter) {
$("#"+$.jgrid.jqID(p.rowID)+
" .ui-inline-edit",
"#"+$.jgrid.jqID($t.p.id)).click();
} else {
var opers = $t.p.prmNames,
oper = opers.oper;
p.addRowParams.extraparam[oper] = opers.addoper;
$($t).jqGrid('editRow', p.rowID, p.addRowParams);
$($t).jqGrid('setSelection', p.rowID);
}
但好消息是,您应该能够使用saveRow
来排除编辑模式。只需确保为新行传递唯一的行ID,以便在下次调用时能够引用它:
jQuery("#energy").jqGrid('addRow', {rowID: myNewRowID});
jQuery("#energy").jqGrid('saveRow', myNewRowID);
如果您遇到saveRow
问题,也可以尝试restoreRow
。
这有帮助吗?