批量删除,批量审核,批量上传

 

一个批量删除的按钮,几个checkbox

 

1.在<table>的<thead>里<tr><th>加入

            <th width="25"><input type="checkbox" id="checkAll"  onclick="checkall()"></th>

,然后在下面的<tbody><tr>要循环的数据里加入

<td><input type="checkbox"  value={$i.id} name="ck"></td>

然后写script,批量选择。

注意一个问题,是我之前遇到的,onclick的方法名,不要是保留字,不然,无效,我原来是  function all(){}

试了半天,我都怀疑人生了。

<script>
    function checkall() {
        var checkAll=$("#checkAll")[0].checked;  //查看总checkbox的选择状态
        if (checkAll==true){            //判断状态,checked是true就是批量选择
            var checkOne=$("input[name='ck']");    

        for (i=0;i<checkOne.length;i++){
            checkOne[i].checked=true;
        }
        }else{
            var checkOne=$("input[name='ck']");
            for (i=0;i<checkOne.length;i++){
                checkOne[i].checked=false;
            }
        }
    }
</script>

2.批量删除

<a href="javascript:;" onclick=del()></i> 批量删除</a>

删除

 function del() {
        if (confirm('您真的要删除吗?') == true) {
            var all =  $("input:checkbox[name='ck']:checked"); //所有name为ck并且是选择状态的checkbox
            if (all.length == 0) {
                alert("请选择,然后进行删除");
                return; //下面代码不执行
            }
            var number = '';
            $("input:checkbox[name='ck']:checked").each(function(k){
                if(k == 0){
                    number = $(this).val();
                }else{
                    number += ','+$(this).val();
                }
            })
            for (i=0;i<number.split(',').length;i++){
                id=number.split(',');
                 window.location.href = "{:url('entering/doDelete')}"+"?id="+id;
            }

        }
    }

至于后台部分,我就不多赘述了。

二.批量审核

<td><select id="choose" onchange="c({$i.id},this)">
                <option value="0" {if $i.status ==0}selected{/if}>未审核</option>
                <option value="1" {if $i.status ==1}selected{/if}>审核通过</option>
                <option value="2" {if $i.status ==2}selected{/if}>审核不通过</option>
            </select></td>
   function check() {
        if (confirm('您真的要使他们审核通过么')){
            var all=$("input:checked[name='ck']");
            if (all.length==0){
                alert("请先选择,然后审核");
                return
            }
            var number = '';
            $("input:checkbox[name='ck']:checked").each(function(k){
                if(k == 0){
                    number = $(this).val();
                }else{
                    number += ','+$(this).val();
                }
            })
                id=number.split(',');
                $.post(
                    "{:url('entering/updateStatus')}",
                    {id:id,status:1,
                    },
                     )
        }
    }

后台我用的thinkphp5.1

 public function updateStatus(){
        $status = $this->request->post("status",'','intval');
        $id = $this->request->post("id",0,"intval");
        if(is_array($id)){
            //我当然知道有批量保存saveall,但炒鸡不好用啊,所以写foreach
            foreach($id as $key=>$val){
                $idd=$id[key];
                $user=EMdel::get($idd);        
                $user->sava(['status'=>$status],['id'=>$idd]);
            }

        }else{
           $user=EModel::get($id);
           $user->save([
               'status'  => $status,
           ],['id' => $id]);
       }
}

三.批量上传

1.html的input标签有multiple属性,可以多选。

2.我是用yii在后台接收的

    public function uploadImgs(){
        $uploadFile = new UploadedFile() ;
        $fileSuffix=$uploadFile::getInstancesByName('file');
        $data = [] ;
        for ($i=0;$i<count($fileSuffix);$i++)
        {
            $endFile = 'uploads/gklr/'. getDateTime("YmdHis").rand(100,999) .'.png' ;
            $a=move_uploaded_file($fileSuffix[$i]->tempName,$endFile);
            $data[$i]= $endFile ;
        }
        return $data ;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值