界面样式:
<div class="right_con" v-if="isclickapply" style="border:none"> <table class="work-table base-table"> <thead> <tr> <th> <checkbox v-model="hasallchecked" @on-change="chooseall"></checkbox> </th> <th style="text-align:left;width:30%">姓名</th> <th style="width:30%">手机号码</th> <th style="width:30%">申请时间</th> <th style="width:10%">操作</th> </tr> </thead> <tbody v-if="applyuserlist&&applyuserlist.length>0"> <tr v-for="(item,index) in applyuserlist" :key="index"> <td> <checkbox v-model="item.hasselected" @on-change="choosesingle(item)" ></checkbox> </td> <td>{{item.truename}}</td> <td>{{item.phone}}</td> <td>{{item.addtime}}</td> <td style="display:flex;aligin-items:center"> <button class="agree" @click="agreeclick([item.id])">通过</button> <!-- <div class="agree" @click="agreeclick([item.id])">通过</div> --> <!-- <div class="disagree" @click="disagreeclick([item.id])">驳回</div> --> <button class="disagree" @click="disagreeclick([item.id])">驳回</button> </td> </tr> </tbody> <tbody v-else> <tr style="text-align: center;"> <td colspan="5">暂无数据</td> </tr> </tbody> </table> <page show-total :total="total" :page-size="size" :current="current" @on-change="changepage" class="page_switch_class" v-if="applyuserlist&&applyuserlist.length>0" /> </div>
关键参数:
hasallchecked(是否全选)
全选方法:
// 全选 chooseall(val) { var self = this if (val) { self.applyuserlist.foreach(ele => { ele.hasselected = true }) } else { self.applyuserlist.foreach(ele => { ele.hasselected = false }) } },
解释:遍历要显示的数组,手动为每一项增加hasselected参数,点击全选时,将所有参数中hasselected置为true,反之亦然。
单选方法:
// 单选 choosesingle(item) { var self = this self.hasallchecked = true self.applyuserlist.foreach(ele => { if (!ele.hasselected) self.hasallchecked = false }) },
解释:先将代表全选的hasselected置为true,遍历要显示的数组,若数组中有已被选中的项,则将hasselected置为false,代表非全选。
批量通过:
// 批量通过 agreeall() { var self = this var isselected = false self.applyuserlist.foreach(ele => { if (ele.hasselected) isselected = true }) if (isselected) { var members = [] self.applyuserlist.foreach(ele => { if (ele.hasselected) members.push(ele.id) }) self.agreeclick(members) } else { self.$app.error('您还没有选择需要审批的成员') } },
批量驳回:
// 批量驳回 disagreeall() { var self = this var isselected = false self.rejectids = [] self.applyuserlist.foreach(ele => { if (ele.hasselected) isselected = true }) if (isselected) { self.applyuserlist.foreach(ele => { if (ele.hasselected) self.rejectids.push(ele.id) }) self.title = self.rejectids.length > 1 ? '批量驳回原因' : '驳回原因' self.rejectreason = '' self.modal12 = true } else { self.$app.error('您还没有选择需要审批的成员') } },
如对本文有疑问, 点击进行留言回复!!
荐 超强的入门文章 !!! JavaScript 速成计划第二篇(杂项详解:JS操作HTML 与 CSS、异常、事件)!
教你搭建 nodejs+mongoose+Graphql+Vue+Typescript 框架(上)
【Nginx】如何为已安装的Nginx动态添加模块?看完我懂了!!
网友评论