正在显示 jquery 验证错误消息,但正在提交表单

Posted

技术标签:

【中文标题】正在显示 jquery 验证错误消息,但正在提交表单【英文标题】:jquery validation error message is showing, but form is getting submitted 【发布时间】:2019-12-20 20:21:06 【问题描述】:

jquery 验证错误消息正在显示,但表单正在提交 我尝试使用e.preventdefault(),但没有奏效。 控制台中没有显示错误。

$('#btn_sub').click(function(e)
    e.preventDefault();

    if($("#user_add").valid())
    var adddata = new FormData(document.getElementById("user_add"));

        $.ajax(
            type: 'POST',
            url: base_url+'admin/shift/add_shift',
            dataType: 'JSON',
            data : adddata,
            async: false,
            processData: false,
            contentType: false,

            success:function (data) 
                console.log(data);
                document.getElementById("user_add").reset();
                $('#model_add').modal('hide');
                show_product();
            ,
            error:function (data) 
                console.log(data);
                alert("Internal Error: Contact Administrator");
            
        );
    
);

【问题讨论】:

检查控制台是否有错误。您在上面的代码中似乎有一些不匹配的大括号 我想应该是e.prevenDefault() 【参考方案1】:

你必须试试这个 -

$("form").submit(function(e)
        e.preventDefault();
        return false;
);

【讨论】:

【参考方案2】:
$('#btn_sub').click(function(e)

e.preventDefault();
if(!$("#user_add").valid())
    return false;

var adddata = new FormData(document.getElementById("user_add"));

    $.ajax(
        type: 'POST',
        url: base_url+'admin/shift/add_shift',
        dataType: 'JSON',
        data : adddata,
        async: false,
        processData: false,
        contentType: false,

        success:function (data) 
            console.log(data);
            document.getElementById("user_add").reset();
            $('#model_add').modal('hide');
            show_product();
        ,
        error:function (data) 
            console.log(data);
            alert("Internal Error: Contact Administrator");
        
    );

);

确保您的验证正确

【讨论】:

大贾斯汀还有其他解决方案吗?验证消息 varunud ,apo thane 数据提交 aakunu。 e.preventDefault() ok 试试 chythu。 if(!$("#user_add").valid()) return false; 试过了,但没用。 能否将完整代码发送至 justinjoseph287@gmail.com 已修复。我使用了 submitHandler: function(form) update_oldShift(); .

以上是关于正在显示 jquery 验证错误消息,但正在提交表单的主要内容,如果未能解决你的问题,请参考以下文章

表单提交甚至电子邮件已经显示 Jquery 的消息

无效时 JQuery 验证插件单选按钮“错误显示”

jQuery Validate 验证但不提交

表单验证错误消息以角度提交时显示

Jquery 验证插件。在字段失去焦点之前消息不可见

jquery验证插件不在rails中显示错误消息