关于row-click和current-change的用法及说明
作者:火海柯神
文章介绍了row-click和current-change事件的使用,并详细描述了在表格联动需求下,仅使用row-click时遇到的问题及解决方案,最终得出结论,current-change事件在行数据或行焦点改变时均会触发,更适合用于表格联动需求
一、row-click和current-change官方文档的使用介绍
1.row-click
当表格某一行被点击时会触发该事件,
参数:
rowcolumnevent
2.current-change
当表格的当前行发生变化的时候会触发该事件,
参数:
currentRowoldCurrentRow
二、问题和解决
1.需求
有四个表,A表、B表、C表、D表,B表与A表联动,C表与B表联动,D表与C表联动,
即:
当点击A表某一行时,B表展示该点击行相关的数据,C、D表同理
2.问题
使用row-click事件
点击A表第一行时,B表展示A表第一行相关数据,C表却展示不出来与B表第一行相关数据(初始默认焦点在第一行);
然后点击B表第一行,C表才能展示B表第一行相关数据;
接着点击A表第二行,这时候假设B表没有A表第二行相关数据,也就是B表此时数据为空,那么会发现C表依旧展示了B表第一行的相关数据,此时C表应该是无数据才对
3.解决
使用current-change事件
点击A表第一行时,B表展示A表第一行相关数据,同时C表也展示了B表第一行相关数据(初始默认焦点在第一行);
因为C表已经展示数据了,所以就直接点击A表第二行,此时B表展示A表第二行相关数据,这时候同样假设B表没有A表第二行相关数据,会发现C表也正常的没有数据展示了
总结
row-click,是只有当点击行的时候才会触发,如果没有点击行,只是行数据或行焦点改变,是无法触发该事件;
current-change,是当前行变化时触发,即使不点击某行,只要行数据或行焦点改变了,就会触发该事件,当然也包括“点击”不同行时,也会触发该事件
所以,有时候current-change可以直接替代row-click去使用
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
