通过点击事件获取相应数据的id,将id传到的控制器,根据id执行删除的sql语句,执行官删除;同时ajax的有点就是快捷方便,无刷新,增强用户的体验。
<?php namespace app\index\controller; use think\Controller; use think\Db; use think\Request; class Del extends Controller { //展示数据 public function show(){ $data = Db::table('yun')->select(); return view("show",['data'=>$data]); } //删除 public function del(){ $id = Request::instance()->param("id"); return Db::table('yun')->where('id',$id)->delete(); } }
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax删除</title> </head> <body> <center> <table> <tr> <td>ID</td> <td>姓名</td> <td>年龄</td> <td>地址</td> <td>操作</td> </tr> {volist name="data" id="vo"} <tr class="{$vo.id}"> <td>{$vo.id}</td> <td>{$vo.name}</td> <td>{$vo.age}</td> <td>{$vo.address}</td> <td> <button type="button" class="del" id="{$vo.id}">删除</button> </td> </tr> {/volist} </table> </center> </body> </html> <script src="/static/js/jquery.js"></script> <script> $(".del").click(function(){ var id = $(this).attr("id"); $.ajax({ method:"POST", url:"{:url('del/del')}?id="+id }).done(function(d){ if(d==1){ $("."+id).remove(); alert("删除成功"); }else{ alert("删除失败"); } }); }); </script>