jQuery验证:多个输入值的总和 [英] jquery validate: sum of multiple input values

查看:71
本文介绍了jQuery验证:多个输入值的总和的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要帮助来创建自定义方法来验证多个文本输入值的总和.

I need help to create custom method to validate sum of multiple text input values.

在表单中,文本输入的数量是可变的,提交时,我需要验证同一组中输入值的总和是否正好是100.

In form I have variable number of text inputs and when submitting I need to validate that the sum of input values in same group is exactly 100.

示例(第二组不应验证)

example (second group should not validate):

<input type='text' name='g1_number1' class='group1' value='20' />
<input type='text' name='g1_number2' class='group1' value='40' />
<input type='text' name='g1_number3' class='group1' value='40' />

<input type='text' name='g2_number1' class='group2' value='20' />
<input type='text' name='g2_number2' class='group2' value='40' />
<input type='text' name='g2_number3' class='group2' value='10' />

推荐答案

我是这样工作的:

自定义验证规则:

$.validator.addMethod(
    "sum",
    function (value, element, params) {
        var sumOfVals = 0;
        var parent = $(element).parent(".parentDiv");
        $(parent).find("input").each(function () {
            sumOfVals = sumOfVals + parseInt($(this).val(), 10);
        });
        if (sumOfVals == params) return true;
        return false;
    },
    jQuery.format("Sum must be {0}")
);

并以此方式使用:

$(".group1").rules('add', {sum: 100});
$(".group2").rules('add', {sum: 100});

这篇关于jQuery验证:多个输入值的总和的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆