【批量删除】Vue3.2 后台管理系统实现批量删除的功能

一、页面表格布局

<el-table ref="multipleTableRef" :data="tableData" border style="width: 100%"
              @selection-change="handleSelectionChange" @current-change="CurrentChange"
              :header-cell-style="{ background: '#23cdab', color: '#606266' }">
              <el-table-column type="selection" width="55" />
              <el-table-column prop="name" label="活动名称" />
              <el-table-column prop="type" label="活动类型" />
              <el-table-column prop="belong" label="活动所属社团" />
              <el-table-column prop="number" label="活动人数" />
              <el-table-column prop="credit" label="活动学分" />
              <el-table-column prop="list" label="人员名单" />
              <el-table-column prop="operate" label="操作" width="300">
                <template #default="scope">
                  <el-button color="#23cdab" :icon="Edit" class="editBtn" @click="editBtn">{{ scope.row.operate.edit
                  }}</el-button>
                  <el-button type="danger" :icon="Delete" class="delBtn" @click="delBtn">{{ scope.row.operate.del
                  }}</el-button>
                  <el-button type="primary" :icon="Setting" class="showBtn" @click="showBtn">{{ scope.row.operate.show
                  }}</el-button>
                </template>
              </el-table-column>
 </el-table>

二、批量删除按钮

未选择的时候按钮置灰

<el-button type="danger" :icon="Delete" @click="batchDeletion()"
                :disabled="batchDel.length === 0">批量删除</el-button>

三、功能模块逻辑

<script setup >
//表格数据
const tableData = ref([
  {
    id: 1,
    name: '11社团',
    type: 'IT学习',
    belong: '计算机学院',
    number: '200',
    credit: '3',
    list: '安卓开发',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 2,
    name: '大数据社团',
    type: 'IT学习',
    belong: '计算机学院',
    number: '50',
    credit: '3',
    list: '互联网',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 3,
    name: '羽毛球社团',
    type: '运动',
    belong: '旅游学院',
    number: '99',
    credit: '2',
    list: '软件开发',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 4,
    name: '排球社团',
    type: '运动',
    belong: '机电学院',
    number: '20',
    credit: '2',
    list: '空乘',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 5,
    name: '篮球社团',
    type: '运动',
    belong: '机电学院',
    number: '50',
    credit: '2',
    list: '互联网',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 6,
    name: '未来社团',
    type: '运动',
    belong: '电信学院',
    number: '50',
    credit: '2',
    list: '软件开发',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 7,
    name: '羽毛球社团',
    type: '运动',
    belong: '旅游学院',
    number: '99',
    credit: '2',
    list: '软件开发',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 8,
    name: '排球社团',
    type: '运动',
    belong: '机电学院',
    number: '20',
    credit: '2',
    list: '空乘',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 9,
    name: '篮球社团',
    type: '运动',
    belong: '机电学院',
    number: '50',
    credit: '2',
    list: '互联网',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
  {
    id: 10,
    name: '未来社团',
    type: '运动',
    belong: '电信学院',
    number: '50',
    credit: '2',
    list: '软件开发',
    operate: { edit: '编辑', del: '删除', show: '查看' },
  },
])
const batchDel = ref([])
//指向DOM元素
const multipleTableRef = ref('')
//获取当前选中的数据给到数据
const handleSelectionChange = (val) => {
  batchDel.value = []
  val.forEach(item => {
    batchDel.value.push(item.id)
  });

}
const delBtn = (id) => {
  ElMessageBox.confirm('此操作将永久删除数据, 是否继续?', '提示', {
    confirmButtonText: '确认',
    cancelButtonText: '取消',
    type: 'warning',
  })
    .then(() => {
      const index = tableData.value.findIndex((item) => item.id === id)
      tableData.value.splice(index, 1)
      ElMessage({ type: 'success', message: '删除成功' })
    })
    .catch(() => {
      ElMessage({ type: 'info', message: '取消删除' })
    })
}
//批量删除
const batchDeletion = () => {
  ElMessageBox.confirm("此操作将永久删除数据, 是否继续?", "提示", {
    confirmButtonText: "确认",
    cancelButtonText: "取消",
    type: "warning",
  }).then(() => {
    batchDel.value.forEach(id => {
      const index = tableData.value.findIndex((item) => item.id === id)
      tableData.value.splice(index, 1)
    })
    batchDel.value = []
    ElMessage({ type: 'success', message: '删除成功', })
    multipleTableRef.value.clearSelection();
  }).catch(() => {
    ElMessage({ type: 'info', message: '取消删除', })
  });
};
<script>

四、效果展示

吃不掉的小虾
关注 关注
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
vue批量删除实现
shenxiaomo1688的博客
05-27 2953
注意上方getList的url为使用反转的单引号,不是平时使用的普通单引号。上面代码中 list为js data中声明的数据,用于接收后台返回的数据。前端和后台交互的JS。
vue+element的表格实现批量删除功能示例代码
10-18
主要介绍了vue+element的表格实现批量删除功能示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
如何基于Vue实现批量删除
最新发布
weixin_57237364的博客
06-13 216
这一步需要注意你的<el-table>属性里是否添加了ref,例如。1.第一步我们需要添加一个批量删除的按钮,并且底色为红色。type设置了危险样式(红色,一般是删除)。2.第二步我们需要根据自己的表单添加复选框。@click代表点击按钮后使用的方法。3.第三步就是编写点击按钮后使用的方法。这一步是保证我们可以拿到选中的行。
VUE前端删除批量删除
weixin_46645338的博客
10-31 9699
在element ui的el-table 我们需要先写出删除按钮接下来就可以在methods 中定义出这个方法了methods: {this.$confirm("此操作将删除信息, 是否继续?", "提示", {confirmButtonText: "确定",
vue 点击删除常用方式
热门推荐
阿威的博客
09-03 1万+
【代码】vue 点击删除常用方式。
vue列表-删除功能
weixin_63257279的博客
08-03 1387
Vue组件中,通过在资源列表的操作列中添加"删除"按钮,并调用doDel()方法进行删除操作。删除操作使用a-popconfirm组件来进行确认提示,用户确认后调用接口进行删除操作。将以上示例代码添加到您的Vue组件中,在适当的位置显示资源列表,并在操作列中添加"删除"按钮,并调用doDel()方法删除对应的资源。根据实际需求适配删除操作的业务逻辑和接口调用。在资源列表中的每一行数据后面有一个"删除"按钮,用户可以点击该按钮来删除对应的资源。
vue实现批量删除
m0_64411343的博客
08-29 2885
vue实现批量删除
vue3.2后台管理系统demo.zip
01-02
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
Vue3.2 后台管理系统.zip
01-02
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
vue3.2后台管理系统.zip
01-02
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
vue3.2后台管理系统学习.zip
01-02
Vue3,springboot,element-ui使用技巧,实战应用开发小系统参考资料,源码参考。 详细介绍了一些Qt框架的各种功能和模块,以及如何使用Qt进行GUI开发、网络编程和跨平台应用开发等。 适用于初学者和有经验的开发者...
vue+element实现批量删除功能的示例
01-19
今年开始学习vue+element实现后台开发,在实现批量删除功能时有2个小知识点记录在下: 1、如何实现单击行交替选中当前行的复选框,element官网的table实例中没有找到。——通过row-click和toggleRowSelection实现 2、如何获取选中行的值来实现批量删除。——通过selection-change实现 代码如下 html: <div class=row> <el type=warning click=delGroup disabled=this.sels.length>批量删除</el-b
vue实现后台管理权限系统及顶栏三级菜单显示功能
10-16
后台管理系统中,权限控制是至关重要的,它可以确保不同级别的用户只能访问他们被授权的功能。本文将详细介绍如何使用Vue.js实现后台管理权限系统以及顶栏三级菜单的显示功能。 首先,我们要理解权限路由的思路。...
vue+element获取el-table按钮新增及批量删除
weixin_55201004的博客
08-29 984
根据官网多选表格所给的@selection-change="handleSelectionChange",方法 进行表格 Tabel 批量删除选中数据
MessageBox弹框
weixin_46852620的博客
01-31 599
<!-- 导入 --> import { MessageBox } from 'element-ui'; Vue.prototype.$confirm = MessageBox.confirm <script> // 根据Id删除对应的用户信息 async removeUserById(id) { // 弹框询问用户是否删除数据 const confirmResult = await this.$confirm( '此操作将永久删除
spring boot 配合element ui vue实现表格的批量删除(前后端详细教学,简单易懂,有手就行)
qq_60614034的博客
02-28 4275
研究了其他人的博客,找到了一篇有含金量的,进行了部分改写实现前后端分离,参考博主为小白Rachel先看看页面效果,要是符合你们所需的功能那就继续看下去1406 1407 被干掉了。
vue实现列表的渲染,增加,删除和查询
low666的博客
03-05 8459
vue实现列表的渲染,增加,删除和查询 1.列表的渲染 首先创建 Vue 实例,得到 ViewModel,然后在列表中渲染数据 <tbody> <tr v-for="item in list" :key="item.id"> <td>{{ item.id }}</td> <td v-t...
vue3使用element ui plus table清除选中项
qq_46402927的博客
09-06 2436
vue3 element ui plus table选择
ant design vue的table清空选择
qq_53821346的博客
05-05 1581
ant design vue的table清空选中的实现过程
vue3.2后台管理系统
09-20
关于Vue 3.2后台管理系统,您可以使用Vue.js框架来构建一个功能强大的后台管理系统Vue 3.2版本带来了许多新的特性和改进,使得开发后台管理系统更加高效和易用。 首先,您需要安装Vue CLI,这是一个官方提供的...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 【element-plus】中菜单栏(el-menu)常用 5364
  • 【vue2】el-table 从接口获取数据改变了,但是页面却没有正常渲染 4113
  • 【vue2+uniapp】密码框输入密码显示和隐藏小功能(两种方法实现) 2689
  • JavaScript中的DOM对象 2399
  • 【vue3】el-table表头和表格文字都居中 1950

分类专栏

  • uniapp 1篇
  • 微信小程序 2篇
  • vue3 6篇
  • element 2篇
  • 数据可视化 1篇
  • BUG记录 2篇
  • Vue2 10篇
  • java 1篇

最新评论

  • 【vue2】el-table 从接口获取数据改变了,但是页面却没有正常渲染

    chonger_feifei: 很好的解决了问题,太棒了

  • 【vue3】el-table表头和表格文字都居中

    吃不掉的小虾: 我没写错 自己去看文档

  • 【vue3】el-table表头和表格文字都居中

    cumt7021: header不知道啥意思吗,这都能写反

  • 【批量删除】Vue3.2 后台管理系统实现批量删除的功能

    吃不掉的小虾: 看后端要你传什么参数,把那个地方替换成后端联调的接口

  • 【批量删除】Vue3.2 后台管理系统实现批量删除的功能

    coallar: 作者你好, 请问如何和后端接口链接呢

大家在看

  • Linux——Centos系统安装(动图演示) 434
  • 《经典车型回顾:那些永不褪色的汽车传奇!》
  • 苹果CMS影视站SEO详细优化教程
  • 《未来汽车:驶向智能与绿色的新纪元!》

最新文章

  • 【uniapp+vue2】小程序充值实现微信支付和余额支付
  • 【vue3】el-table表头和表格文字都居中
  • 【vue3】通过echarts实现k线图
2023年22篇
2022年7篇

目录

目录

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

PHP网站源码坑梓seo东莞SEO按天扣费坪山企业网站制作爱联网站制作设计深圳网站推广工具坂田关键词按天扣费坑梓关键词按天计费横岗网站优化南山网站搜索优化同乐网站关键词优化民治外贸网站建设双龙网站搜索优化石岩网站搭建荷坳百度竞价包年推广广州百度网站优化排名东莞如何制作网站惠州英文网站建设爱联企业网站设计大运网站推广工具大鹏阿里店铺托管沙井建网站福永网站排名优化观澜百搜标王宝安网站推广方案同乐SEO按天计费坪山百度关键词包年推广大浪百度网站优化大运网络营销深圳网站优化布吉seo网站推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

PHP网站源码 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化