<script>
$(document).ready(function(){
$("#some-form").validate({
rules: {
TextBox1: {
required: true,
number: true,
min: 0,
max: 100,
},
TextBox2 : {
required: true,
number: true,
min: 0,
max: 100,
}
TextBox3 : {
required: true,
number: true,
min: 0,
max: 100,
}
TextBox4 : {
required: true,
number: true,
min: 0,
max: 100,
}
},
submitHandler: function(form){
var total = parseInt($("#TextBox1").val()) + parseInt($("#TextBox2").val()) + parseInt($("#TextBox3").val()) + parseInt($("#TextBox4").val());
if (total != 100) {
$(".error").html("Your total must sum to 100.")
return false;
} else form.submit();
}
});
});
</script>
被盜編輯from here。
Hrm ...這絕對是一個有效的答案(並非常完整)。但不完全是我在找什麼。問題是可能有超過1組需要驗證的字段。此外,字段名稱是在運行時生成的,所以JavaScript也需要以動態方式寫出來。無論哪種方式,這是一個很好的起點!我可以從這裏拿到它,但如果你有任何建議,可以隨時添加一些建議。謝謝! – Justin 2010-09-15 18:29:29
不用擔心@Justin。如何使用簡單的.sum()方法(http://viralpatel.net/blogs/2009/07/sum-html-textbox-values-using-jquery-javascript.html)來計算文本框數組?您可以使用每個** SET **文本框都有一個不同的類名,然後如果你願意,甚至可以在.keyup()事件上驗證。我不確定**規則**是什麼,但是你可以發佈關於如何使用類名驗證元素集的另一個問題。 – Marko 2010-09-15 21:15:15