tp5.1批量删除商品

选中要删除的商品,点击批量删除

 

 

  •  先在控制器使用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">&#xe6e2;</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";
          
          }

    }
  • 注意:
  1. 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);


posted @ 2019-12-20 00:42  维京人~  阅读(1294)  评论(0编辑  收藏  举报