调用event.preventDefault()后,验证将被删除

时间:2015-10-21 10:24:28

标签: javascript jquery asp.net-mvc

在$(“form”)中调用 event.preventDefault(); 后,验证将从SSN文本框中删除.resent(function(event)

验证被触发而不是被删除

    function CheckSSN() {

        var sender = $("#SSN");
        var value = $(sender).val();
        var errorSpan = $(sender).siblings("span[data-valmsg-for='SSN']");
        var message = "SSN is required.";
        var validAliasPatt = /^[0-9]{9}$/;
        if (!value || value == "" || value == null) {

            enableValidationUI(sender, errorSpan, message);
            return false;
        }
        else if (!validAliasPatt.test(value)) {
            message = "SSN should be a 9 digit number.";
            enableValidationUI(sender, errorSpan, message);
            return false;
        }
        else {
            disableValidationUI(sender, errorSpan);
            return true;
        }
    }
----------

    ("form").submit(function (event) {

        var submit = true;        

        if (!CheckSSN()) {
            event.preventDefault();
            var submit = false;
        }

        if (submit) {
            $("form").submit();
        }
        else {
            event.preventDefault();
            return;
        }

    });

1 个答案:

答案 0 :(得分:0)

问题在于使用(“表单”)。submit(函数(事件)最终创建无限循环。更改为('button')。单击修复此问题。