我正在开发一个动态添加一些表单域(包括复选框)和相关(jquery)验证规则的网站。更新(澄清):对于某些验证,我需要动态添加验证方法(在创建相关表单字段之后)。该问题与用于确定该字段是否必需的验证代码有关。如果已设置复选框,则该字段应为必填项。添加的验证规则适用于验证“minlength”、“maxlength”和“integer”,但不适用于“required”。我想我明白为什么我的验证“必需”的代码不起作用(因为 listitem),但我不知道如何更正这段代码......
(我查看了本网站以及http://api.jquery.com/checked-selector/上的相关主题)
用于添加复选框表单域的 javascript 代码元素(增加 listitemnr ...):
<input type="checkbox" id="check'+ listitem +'" name="productselection'+ listitem +'" value="' + this.productid[listitem] + '">
更新:检查代码添加验证方法,其中包括检查复选框的代码:
if ($("#nrofparts"+listitem).length > 0) { //elements exists?
//console.log("added VAL: "+listitem);
$("#nrofparts"+listitem).rules("add", {
required: function(element) {return ($('#check'+listitem).is(':checked') );},
minlength: 1,
maxlength: 3,
integer:true,
}
); //$("#investmentfix"+currindex).rules add