<validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/>
例如这种的,有自带的可以验证是数字的吗?
  

解决方案 »

  1.   

    没有,默认都是字串,如果你后台定义的是整型,而你前台提交的不是整数类型,那么会发生类型转化错误,自动给你的后台int型赋值为0
      

  2.   

    没有,建议写个简单的正则<field name="area">
    <field-validator type="requiredstring">
    <message>请输入区号</message>
    </field-validator>
    <field-validator type="regex">
    <param name="expression">
    <![CDATA[(0\d{2,3})]]>
    </param>
    <message>请输入有效的区号,区号只能是以0开始且长度在3-4位之间的数字!</message>
    </field-validator>
    </field>
      

  3.   

    要不试试
    非字段
     <validator type="int">  
           <param name="fidleName">field</param>                   
           <param name="min">1</param>  
           <param name="max">80</param>  
           <message> 数字必须在${min}-${max}岁之间</message>  
    </validator>字段
     <field name="field">  
           <field-validator type="int">  
               <param name="min">1</param>  
               <param name="max">80</param>  
               <message> 数字必须在${min}-${max}岁之间</message>  
           </field-validator>  
       </field>浮点
     <validator type="double">  
           <param name="fidleName">field</param>  
           <param name="minExclusive">0.1</param>  
           <param name="maxExclusive">10.1</param>             
           <message> 输入浮点无效</message>  
       </validator>  
       <!-- 字段校验 -->  
       <field name="field">  
           <field-validator type="double">  
               <param name="minExclusive">0.1</param>  
               <param name="maxExclusive">10.1</param>             
               <message> 输入浮点无效</message>  
           </field-validator>  
       </field>