0

我正在为 jqGrid 使用内联行编辑。

我遍历每一行,在调用 editRow() 之前,我将某些行的列模型上的可编辑属性设置为 FALSE(使某些行的列不可编辑)。在我将编辑规则添加到列模型之前,这一切都很好。保存行时出现 javascript 错误“a 未定义”。

问题 - 有没有办法使某些行的列不可编辑,而其他行定义了编辑规则?

非常感谢任何输入!

4

1 回答 1

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]);
}
于 2013-05-07T20:47:24.150 回答