el-table列表数据刷新后定位到之前点击的那一行

博客围绕el-table列表数据刷新后定位到之前点击行的需求展开。需求是点击编辑出现弹框,修改信息关闭弹框后刷新表格并定位到原行。实现步骤包括给el-table绑定事件,在data中定义值记录点击行位置和索引,保存修改更新表格并定位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

el-table列表数据刷新后定位到之前点击的那一行:

需求描述:点击表格操作列表中的编辑,会出现点击该行的弹框信息,对信息进行修改后,关闭弹框,刷新表格,并定位到之前点击编辑的那一行,注:我没给表格高度,如果表格设置了高度,需对对应部分进行修改


  1. 首先给el-table绑定**@row-click=“clickRow”**事件
    在data()中定义一个值记录点击行的位置,windowScroll是我定义的值
clickRow(row, column, event){
    this.windowScroll = event.pageY
},
  1. 点击编辑按钮时,记录下表格对应的$index,在data()中定义一个rowIndex去存储这个值
//template部分
<el-button  @click="personAuth(scope.$index,scope.row)">编辑</el-button>
//script部分
toEdit(index,data){
    //index为表格对应的行数
    //data是这一行对应的值,这里不做说明
    this.rowIndex = index;
},
  1. 保存弹框中所做的修改,更新到表格中,并定位到之前的位置
    点击按钮关闭弹框,更新表格数据并定位
 perAutoBack(){
      //关闭弹框
      this.childDetailShow = false;
      //更新数据
      this.getList()
      //浏览器定位
      window.scrollTo(0, this.windowScroll - 150)
 },
  1. 关闭弹框,列表数据会更新
//this.list为el-table的数据,multipleTable需给el-table设置ref="multipleTable"
watch: {
    list: function() {
        this.$nextTick(function() {
            this.$refs.multipleTable.setCurrentRow(this.list[this.rowIndex])
        })
    }
},
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值