发送前jQuery!确认警报两次

jQuery beforeSend !confirm alerts twice

本文关键字:两次 jQuery 确认      更新时间:2023-09-26

我有一个按钮,当点击时,它会触发borrame()函数:

$("div").on ("click", ".bBorrar", function () {
    var id = $(this.parentNode.parentNode).attr("id");
    var tabla = $("table").attr("id");
    borrame(id, tabla);
});

borrame功能如下:

function borrame(id, tabla) {
    $.ajax({
       url: "includes/borra.php",
       type: "POST",
       data: {id: id, tabla: tabla},
       beforeSend: function()  {
            if  (!confirm("Are you sure?")){
            exit(0);
            }
        },
       success: function(data) {
           alert(data);
           var este = "#"+id;
           $(este).remove();
       },
       error: function() {
           alert ("Error");
       }
    });
}

我不明白的是,为什么当我点击按钮时,"你确定吗?"确认会出现两次。有什么想法吗?

更新这是HTML:

<table>
<tbody>
    <tr>
        <th>info</th><th>info</th><th>info</th>
    </tr>
    <tr id="1">
        <td>info</td>
        <td>info</td>
        <td>info</td>
        <td><button class="bBorrar btn btn-danger">Delete</button></td>
    </tr>
</tbody>

UPDATE 2:HTML通常由PHP生成。

尝试使用$(document)对象,而不是div,多个div可以发出多个请求。

$(document).on("click", ".bBorrar", function () {
    var id = $(this.parentNode.parentNode).attr("id");
    var tabla = $("table").attr("id");
    borrame(id, tabla);
});