選中要刪除的商品,點擊批量刪除
- 先在控制器使用sql語句查出商品信息goods
- 然后在html源碼中使用goods變量。
<table> {foreach $goods as $item} <tr> <td><input name="ids" class="ids" type="checkbox" value="{$item.goods_id}"></td> <td>123</td> <td>2324</td> </tr> {/foreach} </table>
按鈕源碼
<a href="javascript:;" onclick="datadel()" class="btn btn-danger radius"><i class="Hui-iconfont"></i> 批量刪除</a>
- js
function datadel(){ $ids = $("input[name='ids']:checked"); var checkID=[]; $("input[name='ids']:checked").each(function(i){ checkID[i] = $(this).val(); }); //判斷數組是否為空。空的話禁止點擊 if(checkID.length == 0){ return; } // console.log(checkID); layer.confirm('確認要刪除嗎?',function(index){ // $ids = $(".ids"); $.ajax({ type: 'POST', url:"{:url('productBatchDelAjax')}", data:{checkID:checkID}, dataType: 'json', success: function(data){ // alert(data); // $(obj).parents("tr").remove(); $ids.each(function(i){ $(this).parents("tr").remove(); // console.log($(this).parents("tr")); }); layer.msg('已刪除!',{icon:1,time:1000}); }, error:function(data) { console.log(data.msg); }, }); }); }
- 控制器異步請求刪除數據
public function productBatchDelAjax() { $data = $_POST['checkID']; $DB = new Db; $res=$DB::table("goods")->delete($data); if($res){ echo"ok"; } }
- 注意:
- jquery如何把選中的id提交到后台
$("input[name='ids']:checked").each(function(i){
checkID[i] = $(this).val();
});
2.如何在刪除之后不刷新頁面能達到刪除的效果,操作dom元素
$ids.each(function(i){ $(this).parents("tr").remove(); // console.log($(this).parents("tr")); });
3.tp5批量刪除的語法。data是一個數組。
$res=$DB::table("goods")->delete($data);