我正在为jqGrid使用内联行编辑。
我循环遍历每一行,在调用editRow()之前,我将某些行的列模型上的editable属性设置为FALSE(使某些行的列不可编辑)。这一切都正常,直到我将rowrules添加到列模型。保存行时,我收到一个javascript错误“a is undefined”。
问题 - 是否有办法让列对某些行不可编辑,而其他行是否定义了编辑规则?
非常感谢任何投入!
答案 0 :(得分:0)
我能够通过在每行上调用saveRow()之前设置/重置colModel上的editrules属性来解决这个问题。以下是代码段
function updateEditRuleProp() {
var qtyRule = {required:true, number:true, minValue:1};
if (condition to disable editrules) {
qtyRule = null;
}
jQuery("#tableId").jqGrid('getColProp', 'yourColumName').editrules = qtyRule;
}
以下是调用上述函数的代码
var $this = jQuery("#tableId"), ids = $this.jqGrid('getDataIDs'), i, l = ids.length;
for (i = 0; i < l; i++) {
updateEditRuleProp();
jQuery("#tableId").jqGrid('saveRow', ids[i]);
}