为了账号安全,请及时绑定邮箱和手机立即绑定

无法使用 AJAX 删除 php 中的行

无法使用 AJAX 删除 php 中的行

PHP
阿晨1998 2021-11-05 14:51:39
我正在使用 AJAX 在 PHP 中删除行,但它显示 Row 无法删除。我的删除按钮是这样的...while ($row = mysqli_fetch_array($exec)) {?>    <tr>        <td><?php echo $row["create_date"]; ?></td>        <td><?php echo $row["bni_member_id"]; ?></td>        <td><?php echo $row["bni_member_name"]; ?></td>        <td><?php echo $row["bni_chapter_id"]; ?></td>        <td><?php echo $row["bni_category_id"]; ?></td>        <td><input type="button" name="delete" onclick="delFun()" value="delete" id="<?php echo $row["bni_member_id"]; ?>" class="btn btn-info btn-xs delete_data"/></td>    </tr>    <?php}?>我在点击按钮上调用一个函数。这样的功能。它总是执行部分无法删除。我认为有问题data: {del_id: del_id},我认为数据有问题......但我无法解决它。   var delfin;$(document).ready(function () {    delFun = function () {        $('.delete_data').click(function () {            var del_id = $(this).attr("name");            var $ele = $(this).parent().parent();            $.ajax({                url: "phpfile/delete.php",                method: "POST",                data: {del_id: del_id},                success: function (data) {                    if(data=="YES"){                        $ele.fadeOut().remove();                     }else{                            alert("can't delete the row")                     }                }            });        });    } }); 我的 PHP 文件在另一个这样的目录中<?php    include('../../connection.php');    $music_number = $_POST['del_id'];    //echo $music_number;    $qry = "DELETE FROM bni_member WHERE bni_member_id ='$music_number'";    $result=mysql_query($qry);    if(isset($result)) {       echo "YES";    } else {       echo "NO";    }?>
查看完整描述

3 回答

?
慕哥9229398

TA贡献1877条经验 获得超6个赞

第一个问题是,您name从删除按钮获取属性。您可以bni_member_id作为数据属性传递而不是使用元素id属性。它会引起混乱。


第二个问题是,您同时使用了onlick属性和 jQuery 的click方法。使用它们就足够了。您的输入按钮将如下所示:


<td><input type="button" name="delete" value="delete" class="btn btn-info btn-xs delete_data" data-bni-member-id="<?= $row["bni_member_id"]; ?>" /></td>

然后你的js看起来像这样:


$(document).ready(function () {

    $('.delete_data').click(function () {

        var del_id = $(this).data("bni_member_id");

        var $ele = $(this).parent().parent();

        $.ajax({

            url: "phpfile/delete.php",

            method: "POST",

            data: {del_id: del_id},

            success: function (data) {

                if(data=="YES"){

                    $ele.fadeOut().remove();

                } else {

                    alert("can't delete the row")

                }

            }

        });

    });

});

我希望这可以帮助你。


查看完整回答
反对 回复 2021-11-05
?
呼唤远方

TA贡献1856条经验 获得超11个赞

我正在与您分享我的代码尝试这样


       <tr>

          <td><?php echo $i; ?></td>

          <td><?php echo $row["exam_name"]; ?></td>

          <td><?php echo $row["exam_date"]; ?></td>

          <td><?php echo $row["exam_status"]; ?></td>

          <td><?php echo $row["exam_comment"]; ?></td>

         <td><button type="button" name="delete_btn" id="<?php echo $row["examid"]; ?>" class="btn btn-sm btn-danger btn_delete"><i class="fa fa-trash"></i></button></td> 

      </tr>

添加脚本


<script type="text/javascript">

    $(document).on('click', '.btn_delete', function(){  

           // var id=$(this).data("id3");

            var el = this;

        var id = this.id;

        var splitid = id.split("_");


        // Delete id

        var deleteid = splitid[1];  

           if(confirm("Are you sure you want to delete this?"))  

           {  

                $.ajax({  

                     url:"path.....",  

                     method:"POST",  

                     data:{id:id},  

                     dataType:"text",  

                     success:function(data){  

                           $(el).closest('tr').css('background','#d31027');

                $(el).closest('tr').fadeOut(800, function(){      

                    $(this).remove();

                });  


                     }  

                });  

           }  

      }); 

 </script>


查看完整回答
反对 回复 2021-11-05
?
茅侃侃

TA贡献1842条经验 获得超21个赞

您可以更改删除按钮


 <input type="button" name="delete" onclick="delFun()" value="delete" data-id="<?php echo $row["bni_member_id"]; ?>" class="btn btn-info btn-xs delete_data"/>

和 Jquery 事件


    $(document).on("click",".delete_data",function () {


    var del_id = $(this).data("id");


查看完整回答
反对 回复 2021-11-05
  • 3 回答
  • 0 关注
  • 168 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信