禁用字段时跳过struts验证?

时间:2014-05-05 07:56:07

标签: validation struts disabled-control

我有UI页面(JSP文件),其字段如:Follows:

伊诺:

Ename:

Estatus:员工/承包商下拉框(有2个值)

Ebonus :(此字段仅显示Estatus值为'Employee',当Estatus值为'Contractor'时将禁用)

我对上面的表单进行了struts验证。但问题是,当我在Estatus中选择“承包商”时,Ebonus字段将被禁用。所以,我想跳过那个特定时间的te验证。

任何人都可以提出一个好主意。

提前致谢。

1 个答案:

答案 0 :(得分:0)

假设您已对表单进行验证,我假设您正在讨论action类中的validate()方法。如果您要在jsp上验证表单,则不应该这样做。

当您在“Estatus”字段中选择“Contractor ...”时,您可以执行以下操作以跳过Ebonus字段验证。

具有此表单的Action类:

public class YouClassAction extends ActionSupport implements Validateable {

...

public void validate() {     
    if ( Eno.length() == 0 ) {  
        addFieldError( "Eno", "Eno is required." );         
    }
    ... 

    if ( Estatus.equalsIgnoreCase("Employee") ) {  
        //VALIDATE HERE Ebonus field         
    }    
    ...   
}
}

检查此项以获取有关验证struts 2表单的更多详细信息:http://struts.apache.org/release/2.3.x/docs/form-validation.html