使用preventDefault在提交中添加确认(是否)

时间:2016-10-15 10:34:17

标签: javascript jquery

我使用preventDefault提交代码。这是我的代码

 //submit terima barang
            $("form.form_terima").submit(function (event) {
                if (confirm('Submit Terima Barang ?')) {
                    $(".loader").show();
                    //disable tombol submit supaya tidak reload
                    event.preventDefault();
                    var formData = new FormData($(this)[0]);
                    $.ajax({
                        url: 'po_req/po_req_crud.php', //type='add_terima'
                        type: 'POST',
                        data: formData,
                        async: false,
                        cache: false,
                        contentType: false,
                        processData: false,
                        success: function (data) {
                            console.log(data);
                          //action if success
                        }
                    });
                    return false;
                }
            });

但是,它不起作用。怎么解决?谢谢伙伴:)

1 个答案:

答案 0 :(得分:3)

在您的代码中,event.preventDefault()仅在用户点击" OK" /"是"时才会运行。如果用户点击了#34;否",则表单将提交。

您必须在event.preventDefault()块之外添加if才能使其按预期工作。

$("form.form_terima").submit(function (event) {
    if (confirm('Submit Terima Barang ?')) {
        $(".loader").show();
         //disable tombol submit supaya tidak reload
         var formData = new FormData($(this)[0]);
         $.ajax({
            url: 'po_req/po_req_crud.php', //type='add_terima'
            type: 'POST',
            data: formData,
            async: false,
            cache: false,
            contentType: false,
            processData: false,
            success: function (data) {
                console.log(data);
                //action if success
            }
        });
    }

    // prevent default regardless of user's response
    event.preventDefault();
    return false;
});