vue+element+Java实现批量删除

本文介绍如何使用Vue.js结合Element UI库和Java后端实现表格数据的批量删除功能。主要包括表格代码段的编写,定义显示值,选中项的处理,批量删除按钮的禁用状态控制,事件绑定以及后台请求的处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

表格的主要代码段

  • 主要方法是: @selection-change="selsChange
<el-table ref="singleTable" v-loading="loading" :data="tableData" stripe  @selection-change="selsChange">
	 <el-table-column type="selection" width="55" ></el-table-column>  //复选框
	 <el-table-column label="#" type="index" width="60"></el-table-column>  //id
</el-table>

定义显示值

 data(){
      return{
        sels: [],//选中的值显示
      }
    }

选中时触发

selsChange(sels) {
    this.sels = sels 
},

批量删除按钮 disabled设置是否可用

 <el-button @click="deleteAll(sels)" :disabled="this.sels.length === 0"> 批量删除</el-button>

绑定事见

 deleteAll() {
        var ids= this.sels.map(item => item.id).join()//获取所有选中行的id组成的字符串,以逗号分隔
        console.log(ids)
        this.$confirm('此操作将永久删除该文件及其子文件, 是否继续?', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {      
        	 axios.post("/****/****/deleteAll",{ids:ids}).then(resp=>{ 
        	 	// 传递到后台处理的方刷新页面,callback中使用你最初获取页面信息的方法就行,就会刷新页面
        	 	if (resp.data.status == 200){
        	 	this.$alter(resp.data.message,'',{	
            			confirmButtonText: "确定",
            			callback:action=>{          
            				_this.searchClick(),
            			}
            		}
        	 	}
        	 } 
          })
        })
      }

后台解析

@RequestMapper("deleteAll")
public void delete(@RequestBody Map<String,Objetc> params){
	// 获取传回来的id字符串
	String ids = params.get("ids").toString();
	// 通过逗号分割字符串,获得所有的id,在mapper中通过mybatis提供的动态循环遍历并删除数组中对应id的值就行
	String[] id = ids.split(",");
	// 根据自己的后台逻辑,调用service的方法,我就不写了
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值