gpt4 book ai didi

jquery-validate - addMethod - 如何应用引用两个文本框的自定义规则?

转载 作者:行者123 更新时间:2023-12-03 21:53:59 26 4
gpt4 key购买 nike

我正在使用jQuery validation plugin我想使用一种自定义方法,在决定情况是否有效时考虑输入到两个不同文本框中的两个值。

我知道add method我找到了一个例子......

jQuery.validator.addMethod("math", function(value, element, params) { 
return this.optional(element) || value == params[0] + params[1];
}, jQuery.format("Please enter the correct value for {0} + {1}"));

...它引用两个元素,但我不清楚如何编写使用此类方法的规则?

为了更容易讨论,想象一下我想使用这个示例方法,并且我有一个如下所示的表单..

<form id="TOTALSFORM" name="TOTALSFORM">
<label for="LHSOPERAND">Input 1</label>
<br />
<input type="text" name="LHSOPERAND" id="LHSOPERAND" class="required" />
<br />
<label for="RHSOPERAND">End</label>
<br />
<input type="text" name="RHSOPERAND" id="RHSOPERAND" class="required" />
<label for="TOTAL">End</label>
<br />
<input type="text" name="TOTAL" id="TOTAL" class="required" />
</form>

我还有其他适用的规则,如下所示:

$("#OPTREASON").rules("add", {
required: true,
min: 0,
messages: {
required: "Required input",
min: "Please select a Reason"
}
});

如何执行类似的操作来应用所示的示例自定义方法,以便将“TOTAL”检查为“LHSOPERAND”和“RHSOPERAND”的总和。

最佳答案

尝试以下操作:

创建规则

jQuery.validator.addMethod("checkTotal",function(value) {
total = parseFloat($('#LHSOPERAND').val()) + parseFloat($('#RHSOPERAND').val());
return total == parseFloat($('#TOTAL').val());
}, "Amounts do not add up!");

jQuery.validator.classRuleSettings.checkTotal = { checkTotal: true };

输入

<input type="text" name="TOTAL" id="TOTAL" class="required checkTotal" />

初始化验证

$(document).ready(function() {
$("#TOTALSFORM").validate();
});

在这里摆弄:http://jsfiddle.net/wTMv3/

关于jquery-validate - addMethod - 如何应用引用两个文本框的自定义规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8263535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com