如何在代码中告知表单是否验证失败(客户端)

时间:2014-03-27 22:30:20

标签: jquery validation

我正在使用jquery.validate,jquery.validate.unobtrusive等构建一个mvc应用程序。

如果表单无效,我有一个函数我想执行onclick提交按钮,所以我一直在寻找变量或标志或者在验证失败时在客户端设置的东西,所以我可以解雇我的功能基于此,但我找不到任何可行的功能。任何人都知道全球"失败验证"其中一个jquery脚本中的变量?或者jquery中是否有一个函数可以获得该信息?

1 个答案:

答案 0 :(得分:1)

这是我做什么来挂钩到客户端验证。发生故障时,将阻止用户发布页面,但我需要在服务器上记录此页面。您可以使用您选择的代码轻松替换logJsError方法。

    $(window).load(function () {
        $('form').bind('invalid-form.validate',
            function (form, validator) {
                var message = $.map(validator.errorList, function (error) {
                    return error.message;
                }).join("\r\n");
                if (message) {
                    logJsError(message);
                }

            }
        );
    });
    function logJsError(message) {
        $.get('@page.Url.Action("Index", "Postback")?lastController=@page.ViewContext.RouteData.Values["controller"]&lastAction=@page.ViewContext.RouteData.Values["action"]&message=' + encodeURIComponent(message) + '&ts=' + (new Date().getTime()));
    }