表格的主要代碼段
主要方法是: @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> //復(fù)選框 <el-table-column label="#" type="index" width="60"></el-table-column> //id</el-table>
定義顯示值
data(){ return{ sels: [],//選中的值顯示 } }選中時(shí)觸發(fā)
selsChange(sels) { this.sels = sels },批量刪除按鈕 disabled設(shè)置是否可用
<el-button @click="deleteAll(sels)" :disabled="this.sels.length === 0"> 批量刪除</el-button>
綁定事見
deleteAll() { var ids= this.sels.map(item => item.id).join()//獲取所有選中行的id組成的字符串,以逗號(hào)分隔 console.log(ids) this.$confirm('此操作將永久刪除該文件及其子文件, 是否繼續(xù)?', '提示', { confirmButtonText: '確定', cancelButtonText: '取消', type: 'warning' }).then(() => { axios.post("/****/****/deleteAll",{ids:ids}).then(resp=>{ // 傳遞到后臺(tái)處理的方刷新頁面,callback中使用你最初獲取頁面信息的方法就行,就會(huì)刷新頁面 if (resp.data.status == 200){ this.$alter(resp.data.message,'',{ confirmButtonText: "確定", callback:action=>{ _this.searchClick(), } } } } }) }) }后臺(tái)解析
@RequestMapper("deleteAll")public void delete(@RequestBody Map<String,Objetc> params){ // 獲取傳回來的id字符串 String ids = params.get("ids").toString(); // 通過逗號(hào)分割字符串,獲得所有的id,在mapper中通過mybatis提供的動(dòng)態(tài)循環(huán)遍歷并刪除數(shù)組中對(duì)應(yīng)id的值就行 String[] id = ids.split(","); // 根據(jù)自己的后臺(tái)邏輯,調(diào)用service的方法,我就不寫了}總結(jié)
以上所述是小編給大家介紹的vue+element+Java實(shí)現(xiàn)批量刪除功能,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)錯(cuò)新站長(zhǎng)站網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選