切换tab块,隐藏报表中的一个组件

报表中有一组tab块,有tab1和tab2,当切换到tab2是,隐藏报表中的一个report0组件,切换回tab1时,report0正常显示,请问这个可以实现吗

     

     

按照一楼的提示,写了下面的代码,好像并没有成功隐藏,请大神帮忙看看

setTimeout(function() {  //TAB切换后,获取到当前TAB块的标题索引

 FR.IndexNum = _g().getWidgetByName("tabpane0").getShowIndex(); 

var a = 0; 

 a = FR.IndexNum; 

 if(a==0){

 this.options.form.getWidgetByName('report0').setVisible(true); //显示报表块 

 }     

else if(a==1){          this.options.form.getWidgetByName('report0').setVisible(false); //隐藏报表块      } 

 }, 50);

FineReport 访客登录 发布于 2021-6-29 09:53 (编辑于 2021-6-29 10:28)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
snrtuemcLv8专家互助
发布于2021-6-29 09:54(编辑于 2021-6-29 10:31)

可以的,切换tab时候,加js判断

JS实现隐藏决策报表组件-https://help.fanruan.com/finereport/doc-view-1736.html

==================改成下面

settime函数,里面不能出现this,会失效

-----------------------------

setTimeout(function() { //TAB切换后,获取到当前TAB块的标题索引 

FR.IndexNum = _g().getWidgetByName("tabpane0").getShowIndex();

var a = 0;

a = FR.IndexNum;

if (a == '0') {

_g().getWidgetByName('report0').setVisible(true); //显示报表块 

} else if (a == '1') {

_g().getWidgetByName('report0').setVisible(false); //隐藏报表块     

}

}, 50);

  • 访客登录 访客登录(提问者) 这个我也看到了,主要是怎么获取tab块切换到了哪一个比较不明白
    2021-06-29 09:59 
  • snrtuemc snrtuemc 回复 访客登录(提问者) 参考tab块切换事件,JS实现切换Tab块时进行数据联动-https://help.fanruan.com/finereport/doc-view-3864.html
    2021-06-29 10:03 
  • 访客登录 访客登录(提问者) 回复 snrtuemc 按照这两个帮助文档写了JS,但是没有成功隐藏,代码放在正文了,可以帮忙看看是什么原因
    2021-06-29 10:26 
  • snrtuemc snrtuemc 回复 访客登录(提问者) 看修改答案,测试可以的了
    2021-06-29 10:31 
  • 访客登录 访客登录(提问者) 回复 snrtuemc 感谢大佬
    2021-06-29 10:34 
  • 2关注人数
  • 716浏览人数
  • 最后回答于:2021-6-29 10:31
    请选择关闭问题的原因
    确定 取消
    返回顶部