【问题标题】:validate again fields after one of them changes在其中一个更改后再次验证字段
【发布时间】:2012-09-12 09:44:17
【问题描述】:

当其中一个字段发生更改时,我在重新验证字段时遇到了一些问题。 更具体地说,假设您必须处理总和不能超过 100 的任意数量的字段(用户可以添加新闻或删除现有新闻)。

我现在做的是:

//This basically works on change of the input
$.validator.addMethod('inputBox', checkAmount, 'Value exceeds maximum quantity');

function checkAmount(value, element) {

    if (sumAmounts() <= 100) {
        return true;
    }
    return false;
}

这是它的工作原理,假设我们有 2 个输入框: - 我把80放在第一个 - 我把 30 放在第二个 - 第二个变成红色并显示错误“价值超过最大数量”

当我更改其中一个并且它们的值的总和小于 100 时,我希望所有框都变为“有效”。

我尝试在返回 true 或 false 之前在 checkAmount() 函数中插入以下方法:$('inputBox').validate() / .valid(); / 。改变(); / $('form').validate(); / 甚至 $('inputBox').focus();可以工作但会经历无限循环xD

有什么建议吗?

【问题讨论】:

    标签: jquery validation input


    【解决方案1】:

    它不起作用,因为它不是当前框出现问题,而是其他具有相同验证规则的框

    【讨论】:

      【解决方案2】:

      您可以在每个输入框元素上添加 css 类,例如“inputclass”并应用以下 jQuery 脚本。可能是它的工作..

      $(function(){
          $(".inputclass").change(function(){
                $(this).validate();
           });
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-04-21
        • 1970-01-01
        • 1970-01-01
        • 2023-03-04
        • 1970-01-01
        • 2013-06-15
        • 2019-08-29
        • 2018-04-01
        相关资源
        最近更新 更多