如何验证strutsvalidation.xml文件中的两个文本字段值?

发布于 2024-11-18 09:12:08 字数 1026 浏览 3 评论 0原文

我正在使用 Struts Jquery Ajax 插件进行验证。我需要验证两个文本字段 MinAmt 和 MaxAmt。我需要验证 MaxAmt 始终大于 MinAmt。为此,我将 XML 制作成这样。

<validator type="fieldexpression" short-circuit="true">
        <param name="fieldName">disSlab.maxAmt</param>
        <param name="fieldName">disSlab.minAmt</param>
        <param name="expression">disSlab.maxAmt.greaterThan(disSlab.minAmt)</param>
        <message>Not Valid Max Amt</message>
</validator>   

但它不起作用。我阅读了 这里的简单示例 和代码

<validator type="fieldexpression">
    <param name="fieldname">personBean.carModels</param>
    <param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
    <message>You must select at least one car model.</message>
</validator>

这工作正常。但有人能给我提供大于 的 OGNL 表达式吗?

副词中的感谢 德鲁米尔·沙阿

I am using Struts Jquery Ajax plugin for validation . I need to validation two textfield MinAmt and MaxAmt. I need to put validation that MaxAmt always greater than MinAmt. For that i make my XML like this.

<validator type="fieldexpression" short-circuit="true">
        <param name="fieldName">disSlab.maxAmt</param>
        <param name="fieldName">disSlab.minAmt</param>
        <param name="expression">disSlab.maxAmt.greaterThan(disSlab.minAmt)</param>
        <message>Not Valid Max Amt</message>
</validator>   

But its not working. I read the simple example here and in this code

<validator type="fieldexpression">
    <param name="fieldname">personBean.carModels</param>
    <param name="expression"><![CDATA[personBean.carModels.length > 0]]></param>
    <message>You must select at least one car model.</message>
</validator>

This is working fine. but can anybody provide me an OGNL Expression for greaterthan ?

Thanks in adv
Dhrumil Shah

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

零時差 2024-11-25 09:12:09

尝试:

<validator type="expression>
         <param name="expression">disSlab.maxAmt gt disSlab.minAmt</param>
         <message>disSlab.maxAmt must be great than disSlab.minAmt.</message>
</validator>

有关详细信息,请参阅 http://struts.apache.org /2.0.14/docs/validation.html#Validation-NonFieldValidatorVsFieldValidator

Try:

<validator type="expression>
         <param name="expression">disSlab.maxAmt gt disSlab.minAmt</param>
         <message>disSlab.maxAmt must be great than disSlab.minAmt.</message>
</validator>

For more info see http://struts.apache.org/2.0.14/docs/validation.html#Validation-NonFieldValidatorVsFieldValidator

野稚 2024-11-25 09:12:09

嗨,我终于找到了解决方案
如果我们使用 Bean 并尝试验证该字段(例如 disSlab.maxAmt),它将无法正常工作,但我将该字段更改为简单的 maxAmt,然后应用该代码,它可以正常工作...
代码是这样的...

<validator type="expression" short-circuit="true" >
      <param name="expression">maxAmt gt minAmt</param>
      <message>maxVal must be great than minVal.</message>
    </validator>

不知道为什么会发生这种情况..

Hi finally i got the solution
If we are using a Bean and try to validate that field like disSlab.maxAmt it will not working but i changed that filed to simple maxAmt and then apply that code it working fine...
The code is like this...

<validator type="expression" short-circuit="true" >
      <param name="expression">maxAmt gt minAmt</param>
      <message>maxVal must be great than minVal.</message>
    </validator>

Dont know why this is happening..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文