如何向通过Jquery进行的删除操作添加确认?

时间:2019-06-06 21:10:49

标签: php jquery sql

我在JQuery中有一个函数,该函数与PHP和SQL结合使用,可以从表中删除行,并将其从数据库中删除。

当我单击删除按钮时,这些行会立即被删除,但是,我想添加另一个级别的确认,询问您是否真的要删除它。

通过引用函数删除行的部分

$userObj  = mysqli_query($conn , 'SELECT * FROM `shifts`');

if(isset($_POST['data'])){
    $dataArr = $_POST['data'] ;

    foreach($dataArr as $id){
        mysqli_query($conn , "DELETE FROM shifts where id='$id'");
    }
    echo 'record deleted successfully';
}

jQuery函数

<script>

    $(document).ready(function(){
        $('#checkAll').click(function(){
            if(this.checked){
                $('.checkbox').each(function(){
                    this.checked = true;
                });
            }else{
                $('.checkbox').each(function(){
                    this.checked = false;
                });
            }
        });


        $('#delete').click(function(){
            var dataArr  = new Array();
            if($('input:checkbox:checked').length > 0){
                $('input:checkbox:checked').each(function(){
                    dataArr.push($(this).attr('id'));
                    $(this).closest('tr').remove();
                });
                sendResponse(dataArr)
            }else{
                alert('No record selected ');
            }

        });


        function sendResponse(dataArr){
            $.ajax({
                type    : 'post',
                url     : 'includes/dbh.inc.php',
                data    : {'data' : dataArr},
                success : function(response){
                    alert(response);
                },
                error   : function(errResponse){
                    alert(errResponse);
                }
            });
        }

    });
</script>

1 个答案:

答案 0 :(得分:1)

JavaScript具有确认函数,该函数将根据用户选择的是或否返回布尔值。您可以使用它来使用户确认他们要删除单击功能中的记录。

$('#delete').click(function(){
         if (confirm("Are you sure you want to delete this?")) {
            var dataArr  = new Array();
            if($('input:checkbox:checked').length > 0){
                $('input:checkbox:checked').each(function(){
                    dataArr.push($(this).attr('id'));
                    $(this).closest('tr').remove();
                });
                sendResponse(dataArr)
            }else{
                alert('No record selected ');
            }
         } 
});