【问题标题】:Add validation rules using jquery validate plug-in on dynamically generated elements在动态生成的元素上使用 jquery validate 插件添加验证规则
【发布时间】:2013-06-24 19:54:51
【问题描述】:

我正在尝试对从 html 文字创建的输入添加一些验证规则。

这是我的小提琴:http://jsfiddle.net/idoxobi/HW4xY/1/

HTML:

<form id='form' method='post' >
    <div id='details'>
    </div>
    <a id='Add' href='javascript:void()'>Add</a>
    <br />
    <input type='submit' />
</form>

JavaScript:

$(document).ready(function() {
    $('#form').validate();
    var input = "<input type='text' class='item' name='item' />";
    $('#Add').click(function() {
        $('#details').append(input+'<br />');
        $('#details input:last').rules('add', {
            required: true
        });
    });
})

似乎只在第一个元素中识别规则,但其他元素未经验证通过。

这是我第一次使用这个插件,但是在论坛上每个人都说这应该可以正常工作。

有什么建议吗?

【问题讨论】:

    标签: jquery jquery-validate


    【解决方案1】:

    检查一下:

    html:

    <form id='form' method='post' >
        <div id='details'>
        </div>
        <a id='Add' href='#'>Add</a>
        <br />
        <input type='submit' />
    </form>
    

    js:

    $(document).ready(function() {
        $('#form').validate();
        var i = 0;
        $('#Add').click(function() {
    
            var input = "<input type='text' class='item' name='item"+ i++ +"' />";
            $('#details').append(input+'<br />');
            $('#details input:last').rules('add', {
                required: true
            });
    
            return false;
        });
    });
    

    on jsfiddle

    【讨论】:

      【解决方案2】:

      因为每个输入字段名称都相同,并且已经被@YD1m修复,我的方法如下:

      $(document).ready(function() {
          $('#form').validate();
          var counter = 0;
          $('#Add').click(function() {
              counter++;
              $('#details').append("<input type='text' class='item required' name='item_" + counter + "' />" + '<br />');
          });
      });
      

      【讨论】:

      • 谢谢,我之前看到的示例只是带有“添加规则”部分的代码块,我没有意识到在输入中保持唯一名称也是必要的。
      猜你喜欢
      • 2016-02-07
      • 2013-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多