我们正在使用构建在 jqGrid 之上的 Struts2-jQuery Grid (sjg:grid)
我们添加了在我的网格列中定义的编辑规则,当我单击网格附带的“保存”按钮时,它们会被调用。但是,我们在网格的 NavBar/ToolBar 中为“保存操作”定义了一个自定义按钮。
当用户单击我们的自定义按钮时,如何调用为网格列定义的规则(通过 EditRules)?
更新(提供更多细节和示例代码):
jQGrid 似乎有自定义“edittype”和“editrules”选项..参考网址
我们为我们的网格列定义了类似的自定义编辑规则,如下所示。
<sjg:gridColumn name="customType" index="customType" title="customType"
editable="false" edittype="custom" editrules="{custom:true, custom_func:mypricecheck}"></sjg:gridColumn>
并且javascript函数在同一个JSP页面中定义如下
function mypricecheck(value, colname) {
alert('Calling custom validation');
if (value < 0 || value >20)
return [false,"Please enter value between 0 and 20"];
else
return [true,""];
}
我们使用我的 sjg:grid 标签中的这个附加属性在我们的 sjg:grid 中添加了一个自定义按钮。
navigatorExtraButtons="{
SaveAll:{
title:'Save All',
onclick:function(){fnSaveAll()}
}
};
现在点击这个自定义按钮,我想从我的 fnSaveAll() javascript 函数中调用 editrules 验证。当我单击网格附带的默认“保存”按钮时,会自动调用 editrules 验证。
如果我知道它是如何在内部调用的,那么我可以通过我的自定义按钮以相同的方式调用。