添加和输入后,jQuery验证不起作用

jQuery validation don't work after add and input

本文关键字:jQuery 验证 不起作用 输入 添加      更新时间:2023-09-26

我有一个表单,我有行到一个表手动。这一行需要和输入(required),并且有两个select…

问题是,如果我添加多行,提交验证表不工作的第二行(和后续行)…

Javascript代码:

$('#classAdd').click(function(e){
                e.preventDefault();
                //trainingAction.addRow(schoolGroups[0].schoolGroupId, -1, '');
                //add one line
                $('#classes > tbody:last').append('<tr><td><input class="required datepicker classStartDate" name="classStartDate" /></td>'+
                    '<td><select class="classSchoolGroupId"></select></td>'+
                    '<td><select class="classSchoolId"></select></td>'+
                    '<td><a href="#" class="none classRemove"><i class="icon-remove"></i></a></td></tr>');
                var last = $('#classes tr:last');
                var csgi = last.find('.classSchoolGroupId');
                var csi = last.find('.classSchoolId');
                var input = last.find('.classStartDate');

                //append values
                trainingAction.appendArrayToSelect(csgi, schoolGroups, 'schoolGroupId', 'schoolGroupName', -1);
                //append values
                trainingAction.appendArrayToSelect(csi, schoolGroups[0].getSchools(), 'Value', 'Text', -1);
                //add event
                trainingAction.schoolGroupChange(csgi);
                //rebind datepicker
                helpers.bindDatepicker();
                //rebind validators    
                $('form').validate();
                $(input).rules('add', {
                    required: true
                });
                //rebind remove button
                trainingAction.removeClass();
            });

我像这里建议的那样尝试上面的代码(jQuery validate -用类似的规则分组输入)。

另一个片段,我尝试和不工作(基于这篇文章jquery验证规则)

$('form').validate({
    rules:{
        classStartDate: {
            required:true
        }
    }
});

有解决这个问题的建议吗?

提前感谢!

编辑:jQuery版本:2.0

如果在输入中使用相同的名称进行复制,则只验证第一个名称,则需要在名称中添加括号,如

<input class="required datepicker classStartDate" name="classStartDate[]" />

和javascript

$('form').validate({
    rules:{
        "classStartDate[]": {
            required:true
        }
    }
});

希望我能帮上忙