使用validate.js进行验证,但是提交呢?

时间:2012-07-24 15:34:28

标签: jquery forms validation submit

我正在使用validate.js来使用jQuery验证我的表单。如果出现错误,则在用户单击提交按钮时会弹出错误消息。当用户填写表单并且没有验证错误时,表单不会提交,而是显示验证成功消息(用户通过验证),但表单不提交(或采取行动)。

以下是我的jQuery创建这些消息的部分:

function(errors, event) {
    var SELECTOR_ERRORS = $('.error_box'),
    SELECTOR_SUCCESS = $('.success_box');

    if (errors.length > 0) {
        SELECTOR_ERRORS.empty();

        for (var i = 0, errorLength = errors.length; i < errorLength; i++) {
            SELECTOR_ERRORS.append(errors[i].message + '<br />');
        }

        SELECTOR_SUCCESS.css({ display: 'none' });
        SELECTOR_ERRORS.fadeIn(200);

        } else {
             SELECTOR_ERRORS.css({ display: 'none' });
             SELECTOR_SUCCESS.fadeIn(200);

        }

       if (event && event.preventDefault) {
           event.preventDefault();
       } else if (event) {
           event.returnValue = false;
       }

正如您所看到的,当没有错误时,SELECTOR_SUCCESS会消失。如果没有错误,我想提交表单,不显示任何消息。我可以通过删除一行(SELECTOR_SUCCESS.fadeIn(200);)轻松删除消息,但我还需要提交表单作为替换。由于最后几行阻止了默认操作,因此表单不会提交。这种情况的最佳做法是什么?

0 个答案:

没有答案