如何在struts 2框架中验证select标记

时间:2009-11-18 18:32:30

标签: validation struts2

我是编程的新手,目前我还是一名初级程序员。 我目前在我的一个表单中验证select标签时遇到了一些问题。 我实际上要做的是确保在用户提交表单之前选择了一个项目。

以我的形式;

<s:select list="assessmentTypes" headerKey="0" headerValue=" -- Select One --"
          listKey="id" value="name" listValue="name" key="course.assessmenttype"
          name="assessmenttype.id"/>

我对验证有一些了解但不确定如何为选择列表执行此操作。

我尝试使用字符串的常规验证,但我不认为在这种情况下需要它。例如;

<field name="course.assessmenttype">
    <field-validator type="requiredstring">
        <message>Please Select a value</message>
    </field-validator>
</field>

所有帮助将不胜感激,提前致谢。

3 个答案:

答案 0 :(得分:1)

一种选择是使用具有最小值集的int验证器。因为你想要任何大于0的值。

     <field name="course.assessmenttype">
          <field-validator type="int">
              <param name="min">1</param>
              <message>Please Select a value to continue</message>
          </field-validator>
      </field>

答案 1 :(得分:1)

将headerKey =“0”设置为headerKey =“”

<field name="course.assessmenttype">
          <field-validator type="requiredstring">
              <param name="trim">true</param>
              <message>Please Select a value to continue</message>
          </field-validator>
</field>

答案 2 :(得分:0)

<field name="course.assessmenttype">  
           <field-validator type="regex">  
       <param name="expression">assessmentTypes</param>  
       <message>Select a value to continue</message>  
     </field-validator>  
      </field> 
instead of assessmentTypes, you can directly mention the dropdown list values. Make sure that your validator XML file is in the format <ActionClassname>-validation.xml,which should be in the same package as Action class