[英]Add validation to dynamically created checkboxes jQuery
我正在处理收音机的动态表格,复选框是动态添加的。 不幸的是,我坚持添加验证。
如何将require属性添加到复选框?
以下代码
<ol type="a">
<li><input type="radio" name="answer0[]">A</li>
<li><input type="radio" name="answer0[]">A</li>
<li><input type="radio" name="answer0[]">A</li>
</ol>
<ol type="a">
<li><input type="checkbox" name="answer1[]">A</li>
<li><input type="checkbox" name="answer1[]">A</li>
<li><input type="checkbox" name="answer1[]">A</li>
</ol>
第一种方法如下
$('ol').each(function (i) {
$(this).find("input:first").prop("required", true);
});
由于输入元素具有相同的名称,所以无线电类型可以正常工作。 但是只需要首先输入才需要选中复选框。
第二
$('ol').each(function (i) {
$("[name='answer"+i+"[]']").rules("add", {required:true});
});
但是它给出以下错误
无法读取未定义的属性“设置”
如何至少在复选框中添加验证到复选框...
好的,尝试以下解决方案:
var rules = {};
$('ol [type="checkbox"], ol [type="radio"]').each(function(i,el){
var name = $(el).attr('name');
if(rules[name] === undefined){
rules[name] = {
required: true
};
}
});
$("#myform").validate({
rules: rules
});
你可以试试
$('ol').each(function (i) {
$(this).find("input[type='checkbox']").prop("required", true);
});
尝试检查已选中复选框的长度
$('ol').find('input[type="checkbox"]:checked').length
我会将动态逻辑直接添加到“规则”中。 我最近解决了自己的问题,其中一个表单有两个默认的提交按钮。 由于功能处理了添加的规则。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.