elementUI的table表分页多选

这段代码展示了如何在Vue中处理表格的多选操作,包括从API获取数据填充表格,根据用户选择更新表格项的选中状态,并实现数组去重以避免重复项。同时,它还实现了选择变化时的回调函数,用于管理已选中的表格行。
摘要由CSDN通过智能技术生成
getList(){
    api.getData({pageNo:this.pageNo,recordsPerPage:this.recordsPerPage}).then(res=>{
        this.list=res.data.reply.result
        this.total=res.data.reply.paginator.total
    }).then(()=>{
        this.mutipleSelection.forEach(item=>{
            this.list.forEach(listItem=>{
                if(item.name==listItem.name){
                    this.$refs.mutipleTable.toggleRowSelection(listItem,true)
                }
            })

        })
     })
},

selectChange(arr,row){//在table表上添加@select="selectChange"方法
    if(this.mutipleSelection.length>0){
       this.mutipleSelection.forEach((item,index)=>{
            if(item.name==row.name){
                if(arr.indexOf(row)==-1){//判断是勾选还是取消勾选,如果是-1则是取消勾选,否则就是勾选
                    this.mutipleSelection.splice(index,-1)
                }else{
                    this.mutipleSelection.push(row)
                }
            }else{
                this.mutipleSelection.push(row)
                this.mutipleSelection=unique(this.mutipleSelection)//数组去重,当                            
this.mutipleSelection的长度大于1时,一个值会加入多次,所以先去重
            }
        }) 
    }else{
        this.mutipleSelection.push(row)
    }
}

unique是数组去重的方法,另外操作成功之后,利用this.$refs.multipleTable.clearSelection()清空选项

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值