Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
动态添加的输入上的Jquery验证问题_Jquery - Fatal编程技术网

动态添加的输入上的Jquery验证问题

动态添加的输入上的Jquery验证问题,jquery,Jquery,我已经创建了一个表单,并使用jquery添加了更多字段。这是可行的,问题是,我使用jquery验证插件添加了验证。验证仅对第一个字段有效。我怎样才能解决这个问题。 我已附上代码 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script src="jquery.validate.js"></script> <

我已经创建了一个表单,并使用jquery添加了更多字段。这是可行的,问题是,我使用jquery验证插件添加了验证。验证仅对第一个字段有效。我怎样才能解决这个问题。 我已附上代码

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="jquery.validate.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    var maxField = 10; 
    var addButton = $('.add_button'); 
    var wrapper = $('.field_wrapper'); 
    var fieldHTML = '<div class="add_more"><input type="text" name="fname[]" /><a href="javascript:void(0);" class="remove_button" title="Remove field">Remove</a></div>'; 
    var x = 1; 
    $(addButton).click(function(){ 
        if(x < maxField){ 
            x++; 
            $(wrapper).append(fieldHTML); 
        }
    });
    $(wrapper).on('click', '.remove_button', function(e){ 
        e.preventDefault();
        $(this).parent('.add_more').remove(); 
        x--; 
    });

        $("#popup").validate({
            rules: {
                "fname[]":"required"
            },
            messages:{
                "fname[]":"First Name required"
            }
        });

});
</script>
<style type="text/css">
input[type="text"]{height:20px; vertical-align:top;}
.field_wrapper div{ margin-bottom:10px;}
.add_button{ margin-top:10px; margin-left:10px;vertical-align: text-bottom;}
.remove_button{ margin-top:10px; margin-left:10px;vertical-align: text-bottom;}
</style>
</head>
<body>
    <form  action="" method="post" id="popup">
<div class="field_wrapper">
    <div class="add_more">
        <input type="text" name="fname[]" /><br><input type="text" name="fname[]" />
        <a href="javascript:void(0);" class="add_button" title="Add field">Add More</a>
    </div>
</div>
<input type="submit" name="submit" value="SUBMIT"/>
</form>

$(文档).ready(函数(){
var maxField=10;
var addButton=$('.add_button');
var wrapper=$('.field_wrapper');
var fieldHTML='';
var x=1;
$(添加按钮)。单击(函数(){
如果(x

通常,您可以尝试对输入元素执行.clone()或.copy()。

克隆操作存在验证问题。仅验证一个字段。我想验证所有同名的输入字段。另一个选项是使用“添加”元素创建数组,然后您可以迭代它,并在提交时进行验证。