struts转义隐藏字段的表单验证

时间:2012-12-05 04:34:10

标签: java struts struts-1 struts-validation

我隐藏了一些基于某些条件的字段,即在UI中它们将不可见,但点击提交按钮,struts正在验证这些隐藏的字段..

有没有办法告诉struts不要验证隐藏的字段... i。,只有当这些字段在UI上可见时才验证这些字段。

我正在使用struts 1.2框架。

2 个答案:

答案 0 :(得分:2)

触发这些条件时在表单上设置属性,然后在验证器中检查该属性:

if(!form.isSkipValidation()){
   //Hear you can write your Validation code..
}

在javascript中,您可以使用隐藏的输入字段设置此属性:

<input type="hidden" name="skipValidation" value="false"/>

希望这有用......

答案 1 :(得分:2)

Struts将验证表单中隐藏与否的内容。

您需要使用条件验证并确定是否应该执行这些验证,可能是通过另一个隐藏的表单值,具体取决于您如何确定隐藏的内容。

就个人而言,我发现在XML配置下难以维护这种验证。特别是如果验证条件依赖于业务逻辑,我更喜欢在自定义验证器或ActionForm验证方法中看到这种逻辑,封装在与Struts框架完全隔离的类中。