2017-08-22 49 views
0

我正在使用struts验证器进行jsp验证,我想知道如何根据我的jsp的另一个字段的值来定义字段验证。Struts验证器的字段有条件的另一个变量在jsp上

我有这样一个元素的列表:

<s:select name="varName" label="labelVariable" list="listeVariable" listValue="varValue" listKey="varKey"/> 

而且像这样的一个文本框:

<s:textfield name="varNameText" label="labelText"/> 

在我验证我想验证字段大小“varNameText”取决于列表中选定的值。

如果我的列表中有值1/2/3,我想验证:

  • 如果list = 1个varNameText lenght应该是10
  • 如果list = 1个varNameText lenght应该的! 12

我该如何做到我的XML文件。

感谢您的答案。

回答

0

您可以使用fieldExpression validator

验证使用OGNL表达式的字段。

您可以找到fieldExpression验证程序here的示例。

您可以创建一个表达式,该表达式使用填充到动作bean的任意数量的字段,然后对valueStack运行验证。

例如

<field-validator type="fieldexpression"> 
    <param name="expression"><![CDATA[varName==1?(varNameText.length()==10):(varNameText.length()==12)]]></param> 
    <message>varNameText length should be ${varName==1?10:12}</message> 
</field-validator> 
相关问题