0

这是代码:

jQuery(document).ready(function() {
    $('#MessageAddForm').validate({
        rules: {
            'data[Message][message]': {
               ...
            }
        },
        messages: {
            'data[Message][message]': {
                 ...
            }
        },
        submitHandler: function(form) {
            $('input.submit').attr('disabled', 'disabled');
            $(form).submit();
        }
    });

在 Firefox 和 Chrome 中有效,在 Internet Explorer 8 中也有效,但会出现“Out of memory at line: 3”错误。这个最小的代码同样的错误:

        submitHandler: function(form) {
            $(form).submit();
        }

避免此错误的唯一方法是删除提交处理程序,只留下消息和规则。jQuery 版本是 1.7.1,jQuery 验证插件是 1.9.0 我已经使用不同版本的 jQuery 进行了测试:1.5.2 和 1.6.1 作者说已经测试过的那些:

http://bassistance.de/jquery-plugins/jquery-plugin-validation/

我还尝试了旧版本的验证插件,但内存不足错误仍然存​​在。

受影响的版本是 32 位和 64 位。我不知道旧版本,因为我只支持版本 8 及更高版本。

4

1 回答 1

1

您需要使用默认的表单提交。像这样

submitHandler: function(form) {
    form.submit();
}

使用 $(form).submit(); 重新触发验证功能。上面的代码用于您提供的文档链接中。

于 2012-08-28T20:48:00.387 回答