vue+element+Java实现批量删除功能
程序员文章站
2022-10-15 20:07:03
表格的主要代码段
主要方法是: @selection-change="selschange
表格的主要代码段
主要方法是: @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的方法,我就不写了 }
总结
以上所述是小编给大家介绍的vue+element+java实现批量删除功能,希望对大家有所帮助
上一篇: 还是原来的配方 还是熟悉的味道