甜蜜警报不会触发我的php文件

时间:2017-12-09 22:48:16

标签: javascript jquery sweetalert

我正在为我的网页使用甜蜜警报2,并且我试图在用户按下甜蜜警报上的删除时触发我的php文件,如果他们什么都不做的话。由于一些奇怪的原因,它没有触发php文件,流行音乐也没出现,我在控制台中运行一个简单的甜蜜警报只是为了看看我是否有正确的脚本,它工作正常。  到目前为止我有这个代码:

   <form method="post" id="deleteF" name="delete">
        <button type="submit" name="delete" class="btn btn-xl btn-mrg" id="delete" >Delete</button>
   </form>

$(document).on('submit', 'deleteF', function (e) {
    e.preventDefault();

    swal({
        title: "Are you sure?",
        text: "You can not recover your account if you delete!",
        type: "warning",
        showCancelButton: true,
        confirmButtonColor: "#DD6B55",
        confirmButtonText: "Delete",
        cancelButtonText: "Cancel",
        closeOnConfirm: false,
        closeOnCancel: false
    },
    function (isConfirm) {
        if (isConfirm) {
            $.ajax({
                type: 'POST',
                url: 'lib/delete.php',
                success: function (data) {
                },
                error: function (data) {
                    swal("NOT Deleted!", "Something happened!", "error");
                }
            });
        } else {
            swal("Cancelled", "Your account was not deleted", "error");
        }
        });

        return false;
    });

我的php文件只有一个简单的回声,只是为了测试,任何帮助将不胜感激,注意我只包括相关的部分,甜蜜警报部分包含在脚本标签

1 个答案:

答案 0 :(得分:0)

<a data-id='" . $rows['id'] . "' id='delete_id' class='btn btn-danger btn-sm'<span class='glyphicon glyphicon-trash' href='javascript:void(0)'></span>delete</a>

<script>
    $(document).ready(function() {
        $(document).on('click', '#delete_id', function(e) {
            var id = $(this).data('id');
            SwalDelete(id);
            e.preventDefault();
        });
    });

    function SwalDelete(id) {
        Swal.fire({
            title: 'Are you sure?',
            text: "It will be deleted permanently!",
            type: 'warning',
            showCancelButton: true,
            confirmButtonColor: '#3085d6',
            cancelButtonColor: '#d33',
            confirmButtonText: 'Yes, delete it!',
            showLoaderOnConfirm: true,
            preConfirm: function() {
                return new Promise(function(resolve) {
                    $.ajax({
                            url: 'office_info_delete.php',
                            type: 'POST',
                            data: 'id=' + id,
                            dataType: 'json'
                        })
                        .done(function(response) {
                            Swal.fire('Deleted!', 'Your file has been deleted.', 'success')
                        })
                        .fail(function() {
                            Swal.fire('Oops...', 'Something went wrong with ajax !', 'error')
                        });
                });
            },
        });
    }
</script>