thinkphp怎么实现全选

藏色散人
藏色散人原创
2022-12-08 09:42:041282浏览

thinkphp实现全选的方法:1、创建一个前端示例文件,并设置html按钮;2、通过js代码“layui.use('form', function () {...}”实现数据全部勾选;3、打开thinkphp文件,通过“public function deleteAll(){...}”方法实现全选删除操作即可。

本教程操作环境:Windows7系统、ThinkPHP5版、Dell G3电脑。

thinkphp怎么实现全选?

thinphp5+html全选和反选和多选后删除

最近研究了下按钮的多选,大家可以看看,话不多说上代码

html按钮

      <input style="float: right;margin-left: 10px" type="checkbox" lay-skin="primary"  id="c_all" lay-filter="c_all" title="全部">
      <input style="float: right;margin-left: 10px" type="checkbox" lay-skin="primary"  id="f_all" lay-filter="f_all" title="反选">    
      <input style="float:right;margin-top: 3.5px;margin-left:10px" type="button" id="btndelete" class="layui-btn layui-btn-sm" value="删除">

js

 <!-- 多选删除 -->
    <script type="text/javascript">
      $('#btndelete').click(function(){
       var a = document.getElementsByName("cityId");
        var b=[];
       for(i in a){
         if(a[i].checked)
           b.push(a[i].value);
       }
       if(b==""){alert('请选择数据删除')}else{
        layer.confirm('确定要删除?', function(index) {
     
     
       window.location.href='/admin/commodity/deleteAll?b='+b;
        
      })}
    })
   </script>
    <!-- 全选框 -->
   <script type="text/javascript">
      layui.use('form', function () {
        var form = layui.form;
        //全选
        form.on('checkbox(c_all)', function (data) {
            var a = data.elem.checked;
            if (a == true) {
                $(".cityId").prop("checked", true);
                form.render('checkbox');
            } else {
                $(".cityId").prop("checked", false);
                form.render('checkbox');
            }
 
        });
        //反选
        form.on('checkbox(f_all)', function (data) {
            var item = $(".cityId");
            item.each(function () {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            })
            form.render('checkbox');
 
 
        });
        //有一个未选中全选取消选中
        form.on('checkbox(c_one)', function (data) {
            var item = $(".cityId");
            for (var i = 0; i < item.length; i++) {
                if (item[i].checked == false) {
                    $("#c_all").prop("checked", false);
                    form.render('checkbox');
                    break;
                }
            }
            //如果都勾选了  勾上全选
            var  all=item.length;
            for (var i = 0; i < item.length; i++) {
                if (item[i].checked == true) {
                    all--;
                }
            }
            if(all==0){
            $("#c_all").prop("checked", true);
            form.render('checkbox');}
        });
 
 
    });
   </script>

这个是跳到方法里进行删除

    // 删除全部
    public function deleteAll(){
            $b=input('b');
            // Db::name('excel')->where('id','in',$b)->delete();
            if(false == Db::name('commodity')->where('id','in',$b)->delete()) {
                return $this->error('删除失败,请选择要删除的数据');
            } else {
               
                return $this->success('删除成功','admin/commodity/index');
            }    
    }

推荐学习:《thinkPHP视频教程

以上就是thinkphp怎么实现全选的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。