el-table 在第一行添加合计行和操作按钮

1、预计效果如下

2、前端及样式部分

1)el-table

<el-table
  size="small"
  stripe
  style="width: 100%"
  class="table_info"
  v-loading="loading"
  :data="list"
  show-summary>
  <el-table-column
    label="标题"
    prop="Title"
    min-width="2">
  </el-table-column>
  <el-table-column
    label="1数量"
    prop="Num1"
    min-width="2">
  </el-table-column>
  <el-table-column
    label="2数量"
    prop="Num2"
    min-width="2">
  </el-table-column>
  <el-table-column
    label="3数量"
    prop="Num3"
    min-width="2">
  </el-table-column>
  <el-table-column
    label="4数量"
    prop="Num4"
    min-width="2">
  </el-table-column>
  <el-table-column
    label="操作"
    width="300">
    <template slot-scope="scope">
      <div style="line-height: 1; font-size: 0;">
        <el-button size="mini" @click="这里写单击方法">查看</el-button>
      </div>
    </template>
  </el-table-column>
</el-table>

2)合计的位置设置、按钮添加

// 合计行设置
showSummariesPosition () {
  // 合计行显示在表头
  let table = document.querySelector('.el-table')
  let footer = document.querySelector('.el-table__footer-wrapper')
  let body = document.querySelector('.el-table__body-wrapper')
  table.removeChild(footer)
  table.insertBefore(footer, body)
  // 在合计行的最后一列添加按钮
  let html = table.querySelectorAll('td')[5].querySelector('.cell')
  html.innerHTML = "<el-button size='mini' style='padding: 7px 15px;font-size:12px;border-radius:3px;display: inline-block;display: inline-block;line-height: 1;white-space: nowrap;cursor: pointer;background: #fff;border: 1px solid #dcdfe6;color: #606266;-webkit-appearance: none;text-align: center;box-sizing: border-box;outline: 0;margin: 0;transition: .1s;font-weight: 500;'>查看</el-button>"
  html.onclick = () => {
    this.toAllDetails()
  }
},

3)mounted周期初始化加载

mounted () {
  this.$nextTick(() => {
    this.showSummariesPosition()
  })
},

至此,效果实现如本文开篇所示效果图

以上就是el-table 在第一行添加合计行和操作按钮的介绍,做此记录,如有帮助,欢迎点赞关注收藏!

`el-table`是Element UI库中的表格组件,用于在网页上展示数据列表。在`el-table`中,有一个属性叫做`fixedHeader`,当设置这个属性为`true`时,可以使得表头部分始终保持在视窗顶部不变动,无论用户滚动页面到哪里,表头都固定不动。 ### `el-table`固定第一行的功能 当你希望只让表头的第一行(即标题)固定不动,并允许其他内容自由滚动时,可以利用这个特性。这尤其在数据量较大、需要频繁滚动查看时非常有用,因为固定的表头便于快速定位和理解数据结构。 ### 使用方法: 假设您正在使用Vue框架结合Element UI构建应用,要在`el-table`中添加固定首行功能,只需在您的模板中对`el-table`元素添加`fixed-header`属性即可: ```html <template> <div> <!-- 其他HTML内容 --> <el-table :data="tableData" border fixed-header> <el-table-column prop="column1" label="列名1"></el-table-column> <el-table-column prop="column2" label="列名2"></el-table-column> <!-- 更多列 --> </el-table> </div> </template> <script> export default { data() { return { tableData: [ // 表格数据数组,每项是一个包含多个属性的对象 ] }; } }; </script> ``` 在这个例子中,通过将`border`和`fixed-header`属性应用于`el-table`标签,你可以得到一个拥有固定顶部表头的表格界面。注意,这里的`border`属性通常用于显示表格边框,但它在这里并非核心原因;关键在于`fixed-header`的使用,实现了固定表头的效果。 ### 相关问题: 1. **如何自定义固定表头的样式**? 可以在CSS中为`.el-table__header-wrapper.is-fixed`类添加样式来自定义固定表头的外观。 2. **为什么固定表头会影响性能**? 当固定表头存在时,渲染整个表格以及处理滚动事件可能会消耗更多资源,特别是在大型数据集的情况下。 3. **在哪些场景下推荐使用固定表头**? 主要是面对长文本内容或大量数据,需要用户能够快速定位到表头信息的情况,如日志记录、历史操作列表等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GoodTimeGGB

鼓励一下!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值