0

我在 MVC 应用程序中有一个 HTMLtable,我在其中动态创建/删除行。单击页面中的保存按钮时,我只想使用模型中提到的 JQuery 进行所有验证。谁能帮我验证动态创建的字段?

var firstName;
    $('#tableId tr:visible').has("td").each(function (row) {
        $(this).find('input,select,checkbox')
            .each(function (col) {
                $ctl = $(this);
                if ($ctl.is('input:text')) {
                    firstName = $ctl.val();
                    $ctl.rules('add', { required: true, messages: { required: 'First Name field is required'} });
                }
            });
    });
    var val = $("#formDealFeeRates").validate();
    val.showErrors();
    alert(val.valid());

谢谢...

4

1 回答 1

0

您可以使用 的.form()方法$.validate()在某些点进行验证检查,而无需事先进行。

这可能不太清楚,但本质上,而不是这样做:

var val = $("#formDealFeeRates").validate();
val.showErrors();
alert(val.valid());

你可以这样做:

$('#tabeId').on('submit', function(e){
    e.preventDefault();
    if ($(this).validate().form())
    {
        //this is valid, run save code here
    }
    else
    {
        //this is not valid. but you don't need to
        //do anything, validate will show the usual error messages.
    }
});

这样做会考虑到在初始$('form').validate()调用后添加的任何字段,因为每次提交表单时都会重新执行检查。

希望这有帮助/有意义

文档:http ://docs.jquery.com/Plugins/Validation/Validator/form

于 2012-05-17T10:54:46.333 回答