我有一个要使用jQuery Validation插件进行验证的表单。我目前在使用array(name="inputname[]")输入元素时遇到问题,该元素是用jQuery动态创建的.on()。让我解释一下这个问题:有一种形式,存在一个名为的输入文本name[]。有一个按钮可添加更多输入文本,该元素使用.on()执行。我单击了2或3次,因此会有多于1个输入文本。我单击提交,该窗体是正确验证,但它仅验证第一个创建的数组元素,而不验证另一个元素。对于完整的代码,我在这里创建了一个jsfiddle:http : //jsfiddle.net/ThE5K/4/jQuery的:$(document).ready(function () { // MODE 1 // With [] or array name <<<< this one is not working $("#addInput").on('click', function () { $('#inputs').append($('<input class="comment" name="name[]" />')); }); /* MODE 2 Without [] or array name <<<< this one is working var numberIncr = 1; $("#addInput").on('click', function () { $('#inputs').append($('<input class="comment" name="name' + numberIncr + '" />')); numberIncr++; }); */ $('form.commentForm').on('submit', function (event) { $('input.comment').each(function () { $(this).rules("add", { required: true }) }); event.preventDefault(); console.log($('form.commentForm').valid()); }) $('form.commentForm').validate();});HTML:<form class="commentForm"> <div id="inputs"></div> <input type="submit" /> <span id="addInput">add element</span></form>我在其中创建了两种模式,一种工作模式(不带数组名的动态输入文本)和一种不工作模式(带数组名的动态输入文本)。我一直在通过那些解决方案,但不幸的是,其中没有一个起作用:jQuery验证为数组输入添加规则jQuery Validate不适用于动态内容jQuery验证动态输入数组请帮忙。
2 回答
- 2 回答
- 0 关注
- 478 浏览
添加回答
举报
0/150
提交
取消