Jquery 对动态填充字段的验证

Jquery Validation on dynamically populated fields

我在获取 Jquery 验证以在动态填充的字段上正常工作时遇到问题。首先我使用 asp.net,所以我需要我的姓名字段保持不变,因为在服务器端,我拉取该信息数组,将其拆分并更新数据库。

         <form id="insert_additions" action="http://yahoo.com" method="post">
<label>
    Name1<input type="text" name="testing" value="" required/>
</label>
<label>
    Name2<input type="text" name="box_setup"  required value="" />
</label>
<label>
    Comments:&nbsp<input type="text" name="comments" value="" /></label><br />
<div id="work"></div>
<br />
<hr align="left" width="50%"/>
<span style="margin: 0 0 0 300px;">
    <input class="submit" type="submit" value="Submit">
    <input type="button" id="addbutton" class="flatBtn" value="Add Another Project Line" /></span>
</form>

这是添加字段的代码

var work_count = 2;
$("#addbutton").click(function () { //sets up the validator
    //Html to create a new field
    var newField = "<hr align='left' width='50%'>\
        <label>Name1\
        <input type='text' name='testing"+work_count+"' required size='8'  value='' \
        </label>\
        <label>Name2\
        <input type='text' name='box_setup' required value='' />\
        </label>\
        <label>Comments:\
        <input type='text' name='comments' value='' />\
        </label>\
    ";
    $("#work").before(newField);
    $('input[id="testing'+work_count+'"]').rules("add", {  // <- apply rule to new field
        required: true
    });
    work_count++;
});

如您所见,我已尝试在 javascript 中添加 validate.rules() 以便在将新输入添加到页面时它也可以插入新规则。我试过制作 id 变量,但我不确定我做错了什么。验证仅适用于第一组字段。我已经阅读并尝试实施我在该网站上阅读过的各种解决方案,但我只是失去了我已经开始用我的键盘敲打我的头。任何帮助都会很棒我感谢并喜欢这个网络论坛。

通过jquery设置属性怎么样?

$('input[name="testing'+work_count+'"]').attr('required', true);

顺便说一句,您添加的输入没有 id 属性。 所以:

$('input[id="testing'+work_count+'"]').rules("add"

应该是

$('input[name="testing'+work_count+'"]').rules("ad