求教大家:为什么决策报表中参数面板下拉框“编辑后”事件中的代码不能切换tab呢?

为什么下拉框“编辑后”事件中的代码不能切换tab呢?


image.png

根据参数查看不同报表_tabs_test.frm

var cptName = this.options.form.getWidgetByName("cptName").getValue();

if (cptName=='订单表') {

_g().getWidgetByName("tabpane0").showCardByIndex(0);

}

else if(cptName=='订单明细'){

_g().getWidgetByName("tabpane0").showCardByIndex(1);

}

else(cptName=='') {

_g().getWidgetByName("tabpane0").showCardByIndex(0);

}


参考:使用超级链接的方式:
https://www.pianshen.com/article/9101597856/


FineReport alu 发布于 2020-9-25 09:57
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
shirokoLv6资深互助
发布于2021-4-25 13:42(编辑于 2021-4-25 14:05)

image.png

语法错误 else if(cptName=='') 

或者直接 else

改完就好了

1600998968684293.frm

最佳回答
0
krystal033Lv7高级互助
发布于2020-9-25 09:59
var a=this.options.form.getWidgetByName('a').getValue();
if(a=="1-a"|| a=="1-b" ){
 var sht=0;
 };
if(a=="2-a"|| a=="2-b" ){
 var sht=1;///从0开始,一一对应下面sheet
 }
contentPane.$contentPane.data('TabPane').selectTabAt(sht);

参考一下这个

  • alu alu(提问者) 多谢回复!我这是在决策报表中,不是在普通报表中
    2020-09-25 10:35 
最佳回答
0
snrtuemcLv8专家互助
发布于2021-4-24 10:34

你这个加一个延时把,你这个代码,下拉后直接查询刷新页面,后面代码生效后就被重置了

setTimeout(function() { 

var cptName = this.options.form.getWidgetByName("cptName").getValue();

if (cptName=='订单表') {

_g().getWidgetByName("tabpane0").showCardByIndex(0);

}

else if(cptName=='订单明细'){

_g().getWidgetByName("tabpane0").showCardByIndex(1);

}

else(cptName=='') {

_g().getWidgetByName("tabpane0").showCardByIndex(0);

}

}, 1000);

  • 4关注人数
  • 587浏览人数
  • 最后回答于:2021-4-25 14:05
    请选择关闭问题的原因
    确定 取消
    返回顶部