Struts的字符串验证器有条件地对jsp上的另一个变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts的字符串验证器有条件地对jsp上的另一个变量相关的知识,希望对你有一定的参考价值。

我正在使用struts验证器进行jsp验证,我想知道如何根据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长度应为10
  • 如果list!= 1,则varNameText长度应为12

如何在我的xml文件中执行此操作。

谢谢你的回答。

答案

你可以使用fieldExpression validator

使用OGNL表达式验证字段。

你可以找一个fieldExpression验证器here的例子。

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

例如

<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>

以上是关于Struts的字符串验证器有条件地对jsp上的另一个变量的主要内容,如果未能解决你的问题,请参考以下文章

struts---JSP界面验证码生成与验证

如何根据MySQL中的另一列有条件地选择列

如果第一个条件失败,则在具有较少条件的另一列上进行 SQL 连接

SQLServer -------- where 子句的另一种用法,以值为搜索条件,字段为过滤条件

SQLServer -------- where 子句的另一种用法,以值为搜索条件,字段为过滤条件

获取由 PySpark Dataframe 上的另一列分组的列的不同元素