繁体   English   中英

如果不为空,Struts 2 验证字段

[英]Struts 2 validate field if not empty

表单中有两个字段 email 和电话号码(整数)。 该表单使用 struts 验证框架 (ActionClass-validation.xml) 进行验证。 这两个字段是可选的,因此用户可以将它们留空。 但如果它们不为空白,则需要验证字段。 请帮助我了解如何在 xml 中编写验证器来执行此操作。

您还可以使用注释。 在我看来,它更易于理解并且易于编写和调试。 这是一个例子:

@EmailValidator(type = ValidatorType.SIMPLE, message = "", key = "validation.email")
public String getEmail() {
  return email;
}

对于数字,您可以使用正则表达式验证器:

@RegexFieldValidator(key = "validation.number", message = "", type = ValidatorType.SIMPLE, expression = NUMBER_PATTERN_STRING)
public String getNumber() {
  return number;
}

在您的 jsp 中,您可以使用字段(或操作)错误标签来引用错误:

<s:fielderror fieldName="email" cssClass="myerrorclass"/>
<s:textfield  name="email" cssClass="myclass" cssErrorClass="myothererrorclass"/>

我希望代码是不言自明的。 快乐编码; ;)

尝试这个

<field name="email">
    <field-validator type="email">
        <message>Invalid Email (empty email accepted)</message>
    </field-validator>
</field>

<field name="contact">
     <field-validator type="regex">
       <param name="expression"><![CDATA[([1234567890]+)]]></param>
       <message>Invalid Contact Number (empty number accepted)</message>
    </field-validator>
</field>

这是一个完整的例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM