业务需求:
表格里面一键全选功能,但是有些数据可能不满足全选的需求,当点击全选时,不满足条件的默认不认其选中
代码如下
<Button type="info" class=" ml20 w100" :loading="loading3" @click="queryList(1)">
<span v-if="!loading3">查询</span>
<span v-else>查询</span>
</Button>
<div id="application_table " class="contentcss mt10">
<div class="allchiose">
<Button type="primary" @click='examine'>一键标记已读</Button>
</div>
<Table highlight-row border ref="selection" :columns="columns2" :data="data2" @on-selection-change="requires"></Table>
<div class="tr mt15">
<Page v-if="startRow1!=0" :total="total" :current="startRow2" :page-size="endRow2" @on-change="pageChange2" @on-page-size-change="pagesizechange2" show-sizer show-total></Page>
</div>
</div>
//methods 里面的数据
methods:{
queryList(startRow) {
let data = {
wordsBeginTime: new Date(this.beginTime2).valueOf(),
wordsEndTime: new Date(this.endTime2).valueOf(),
pageNum: startRow,
pageSize: this.endRow2,
swingOrderNo: this.orderNumber,
readStatus:this.messageCode == "-1" ? "" : this.messageCode,
wordsStatus: this.shieldCode=="-1"?"":this.shieldCode,
};
this.http
.post(BASE_URL + "后台接口", data)
.then(data => {
if (data.code == "success") {
this.loading3 = false;
this.data2 = data.data.dataList;
// this.data1[0]['_disabled'] = true
//这里的就时给数据添加_disabled属性
for(var i=0;i<this.data2.length;i++){
if(this.data2[i].wordsStatus=='2' || this.data2[i].readStatus=='1'){
this.data2[i]['_disabled'] = true
}
}
this.total = data.data.total;
this.startRow2 =
Math.ceil(data.data.startRow / this.endRow2) == 0
? 1
: Math.ceil(data.data.startRow / this.endRow2);
} else {
this.loading3 = false;
}
})
.catch(err => {
console.log(err);
});
}
}