我们正在使用构建于jqGrid之上的Struts2-jQuery Grid(sjg:grid)
我们添加了在gridcolumn中定义的editrules,当我点击网格附带的“Save”按钮时,它们会被调用。但是,我们在网格的NavBar / ToolBar中为“保存操作”定义了一个自定义按钮。
当用户点击我们的自定义按钮时,如何调用网格列定义的规则(通过EditRules)?
更新(提供更多详情和示例代码):
jQGrid似乎有自定义“edittype”和“editrules”选项.. reference url
我们为网格列定义了类似的自定义编辑规则,如下所示。
<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验证。
如果我知道它是如何在内部调用的,那么我可以从我的自定义按钮调用相同的方式。