赞
踩
今天遇到一个elmentui中table的一个坑
需求:在table中,点击新增按钮,增加一条数据,光标自动带入到table的最后一条数据的第一个select中
使用的语法 :this.$refs[
selectInRef${index}].focus();
记得加 this.$nextTick(()=> {
})
table中使用el-select和el-input进行动态渲染 ,已经确保了ref的唯一性
结果:无法实现效果
原因: fixed=“right” ,表格里面使用了这个属性,导致dom节点的ref不唯一,因为代码是从上往下走的,所以每次找到的都是最后面隐藏的dom节点
解决方法:找到table中是否有使用 fixed=“right” ,这个属性,去除就行,剩下就是和产品做斗争的时候到了,可以看一下 fixed=“right” 实现的原理,你就懂了,如果有能力的话可以二开一下他这个属性,然后到时候分享一下
补充: 可以使用id的特性进行dom节点的操作
案例: 在select中定义id名字
然后使用byid找到对应的dom节点,可以自己log看一下确认一下,然后再调用一下focus这个方法就可以了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。