Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
Javascript Jquery验证程序插件没有';t检查新输入_Javascript_Jquery_Validation - Fatal编程技术网

Javascript Jquery验证程序插件没有';t检查新输入

Javascript Jquery验证程序插件没有';t检查新输入,javascript,jquery,validation,Javascript,Jquery,Validation,嗨,我对一个表单使用jQuery验证程序。 到今天为止,一切都很顺利。我在表单中添加了一个新的代码,可以在表单中添加/删除额外的字段(将类设置为“必需”) 基本表单类似于> <form name="form" id="form"> <input name="text1" class="required"> <a id="addnew">Add new text</a> <div id="newitems"><

嗨,我对一个表单使用jQuery验证程序。 到今天为止,一切都很顺利。我在表单中添加了一个新的代码,可以在表单中添加/删除额外的字段(将类设置为“必需”)

基本表单类似于>

    <form name="form" id="form">
    <input name="text1" class="required">
    <a id="addnew">Add new text</a>
<div id="newitems"></div>
    <submit>
    </form>


如果要添加动态内容,任何现有控件都不会影响新控件。修改dom后,必须再次分配事件。因此,在dom修改后再次调用验证程序。

在创建新表单元素时,需要通知验证插件通过添加规则进行检查。将“required”类添加到元素时,仅当该元素在文档加载时才向插件发出警报。试试这个:

   $(document).ready(function({ 
        $("#form").validate(); 
        $("#addnew").click(function({ 
            var input = $("<input />").attr("name", "newinput");
            $("#newitems").append(input);
            input.rules('add', {'required': true})
        }); 
    }); 
$(文档).ready(函数{
$(“#表单”).validate();
$(“#添加新”)。单击(函数({
变量输入=$(“”).attr(“名称”,“新输入”);
$(“#newitems”)。追加(输入);
规则('add',{'required':true})
}); 
}); 

加载动态内容后,必须再次绑定事件


如果要向新控件添加任何不影响现有控件的动态内容,则必须在修改dom后再次分配事件。因此,在修改dom后再次调用验证程序

如果您想重新绑定,只需再次呼叫即可

 $("#addnew").click(function({ 
      $("#newitems").append('<input class="required" name="newinput">'); 
        }); 
$(“#添加新”)。单击(函数({
$(“#新项目”)。附加(“”);
}); 
您还可以将其放入函数中

function rebindit() {
 $("#addnew").click(function({ 
     $("#newitems").append('<input class="required" name="newinput">'); 
    }); 
}
函数重新绑定(){
$(“#添加新”)。单击(函数({
$(“#新项目”)。附加(“”);
}); 
}

每次内容更改时,请调用rebindit()

javascript中有一个onchange事件,该事件在字段内容更改时触发。您也可以在新字段上使用它来验证该字段。

绑定绑定将触发它两次,您需要首先清除当前绑定的项…虽然这是正确的操作过程,但它不适用于dynamically添加了项目。您仍然需要对所有内容进行debind和rebind。
function rebindit() {
 $("#addnew").click(function({ 
     $("#newitems").append('<input class="required" name="newinput">'); 
    }); 
}