jquery 検証ルールにリンクしたフォームに 2 つの非表示の入力フィールドがあります。これらは一種の「グローバル」フォーム ルール (たとえば、複数のフィールドの合計が 100% に等しくない) であるため、フォームの上部に隠しフィールドを使用して、フォーム全体に適用されるメッセージを表示しています。
それらは次のように定義されます。
<input type="hidden" class="futuretotalsunder"/>
<input type="hidden" class="futuretotalsrequired"/>
これが私のルール定義です。あなたはそれのアイデアを得ることができます。最初のルールは、一連のテキスト ボックスの合計が 100 未満かどうかをチェックし、2 番目のチェックは合計が 0 でないことを確認します。入力要素。2番目のものは決して発火しません。理由はありますか?
$.validator.addMethod("futuretotalsunder", function (val, element, params) {
alert("under");
var total = 0;
$(".TransferPercentTextBox").each(function () {
total = total + parseInt($(this).val());
});
if ((total < 100) && (total != 0)) {
window.location.href = "#Top";
return false;
}
else {
return true;
}
}, "Total percentage must equal 100%.");
$.validator.addMethod("futuretotalsrequired", function (val, element, params) {
var total = 0;
$(".TransferPercentTextBox").each(function () {
total = total + parseInt($(this).val());
});
if (total == 0) {
window.location.href = "#Top";
return false;
}
else {
return true;
}
}, "Transfer amount must be greater than 0.");