首页 >php框架 >ThinkPHP >thinkphp怎么实现全选

thinkphp怎么实现全选

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

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

thinkphp怎么实现全选

本教程操作环境: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">
      $(&#39;#btndelete&#39;).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(&#39;请选择数据删除&#39;)}else{
        layer.confirm(&#39;确定要删除?&#39;, function(index) {
     
     
       window.location.href=&#39;/admin/commodity/deleteAll?b=&#39;+b;
        
      })}
    })
   </script>
    <!-- 全选框 -->
   <script type="text/javascript">
      layui.use(&#39;form&#39;, function () {
        var form = layui.form;
        //全选
        form.on(&#39;checkbox(c_all)&#39;, function (data) {
            var a = data.elem.checked;
            if (a == true) {
                $(".cityId").prop("checked", true);
                form.render(&#39;checkbox&#39;);
            } else {
                $(".cityId").prop("checked", false);
                form.render(&#39;checkbox&#39;);
            }
 
        });
        //反选
        form.on(&#39;checkbox(f_all)&#39;, function (data) {
            var item = $(".cityId");
            item.each(function () {
                if ($(this).prop("checked")) {
                    $(this).prop("checked", false);
                } else {
                    $(this).prop("checked", true);
                }
            })
            form.render(&#39;checkbox&#39;);
 
 
        });
        //有一个未选中全选取消选中
        form.on(&#39;checkbox(c_one)&#39;, 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(&#39;checkbox&#39;);
                    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(&#39;checkbox&#39;);}
        });
 
 
    });
   </script>

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

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

推荐学习:《thinkPHP视频教程

以上是thinkphp怎么实现全选的详细内容。更多信息请关注PHP中文网其他相关文章!

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