我是否需要为每个表单单独执行Struts操作?

时间:2014-07-24 01:59:03

标签: validation struts2

我是否需要为每个表单单独执行Struts操作?

目前,一个网页在jsp中有两种形式。我目前将所有验证代码放在Action类的validate()中。问题是看起来最终结果是表单A将链接到表单B,反之亦然,因为验证代码在同一个Action类中。

所以我更正确的是,如果我希望独立验证这两个表单,那么我需要两个单独的操作吗?

1 个答案:

答案 0 :(得分:1)

表格A:

<font color="red" size="2"><s:actionerror /> <s:fielderror /></font>
<s:form action="NewcreateUser" method="post">
    <s:textfield  type="text" name="form1filed" key="temp" size="11" label="Mobile_Num" required="true"></s:textfield><br />
    <s:submit value="Continue" id="continueSignUp" validate="true"></s:submit>
</s:form>

表格B:

<font color="red" size="2"><s:actionerror /> <s:fielderror /></font>
<s:form action="NewcreateUser" method="post">
    <s:textfield  type="text" name="form2filed" key="formb" size="11" label="Mobile_Num" required="true"></s:textfield><br />
    <s:submit value="Continue" id="continueSignUp" validate="true"></s:submit>
</s:form>

此处您可以使用相同的Action类

验证您的字段,包括form1filed,form2filed

NewcreateUser,NewcreateUser-validation.xml文件如下所示,

<field name="form1filed"> 
    <field-validator type="required" short-circuit="true">
        <message key="form1filed Is Required" />
    </field-validator>
</field>

<field name="form2filed"> 
    <field-validator type="required" short-circuit="true">
        <message key="form2filed Is Required" />
    </field-validator>
</field>