一:做成的效果图
二:代码展示
1:html
2:js
<div class="add-follow" v-cloak>
<div class="my-top">
<div class="mui-input-row mui-checkbox mui-left">
<label>全选</label>
<input type="checkbox" :checked="followSelectedList.length === arrData.length" @change="handleCheckAllChange">
</div>
</div>
<div class="my-content">
<div v-for="(val, key) in arrData" :key="key">
<div class="my-content-box">
<div class="mui-input-row mui-checkbox mui-left">
<label>{{val.userName}}</label>
<input type="checkbox" :checked="followSelectedList.indexOf(val.userId) >= 0"
@change="handleCheckChange(val.userId,val.userName)">
</div>
<div class="two-box">
{{val.roleName}}
</div>
</div>
<hr v-if="key != arrData.length-1">
</div>
</div>
<div class="my-fix">
<div class="my-fix-btn">
<div class="my-fix-btn-yxz">
已选择{{followSelectedList.length}}人
</div>
<div class="my-fix-btn-qd" @tap="send">
确定
</div>
</div>
</div>
</div>
handleCheckChange (userId,userName) {
let idx = vm.followSelectedList.indexOf(userId);
let idx2 = vm.followSelectedListValue.indexOf(userName);
idx >= 0 ? vm.followSelectedList.splice(idx, 1) : vm.followSelectedList.push(userId);
idx2 >= 0 ? vm.followSelectedListValue.splice(idx2, 1) : vm.followSelectedListValue.push(userName);
},
handleCheckAllChange () {
vm.checkAll = !vm.checkAll;
if (vm.checkAll) {
vm.followSelectedList = [];
vm.followSelectedListValue = [];
vm.arrData.forEach(val => {
vm.followSelectedList.push(val.userId);
vm.followSelectedListValue.push(val.userName);
}, vm);
return;
}
vm.followSelectedList = [];
vm.followSelectedListValue = [];
},