您的位置:首页 > Web前端 > Vue.js

vue+element+Java实现批量删除功能

2019-05-28 07:01 3571 查看

表格的主要代码段

主要方法是: @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实现批量删除功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: