报表主体的控件联动参数面板的控件失效。

需要做个报表主体的控件跟参数面板的控件联动效果;具体的效果是当报表主体的控件1为某个值时,参数面板的控件3就变更为不可用状态;通过JS实现,如果JS 放在参数面板2中是可以完美实现,但是放在报表主体控件1时 就无效了 ;以下是JS代码,麻烦各位大佬给看看。

var form = this.options.form;
var value = this.getValue();
var ty = this.options.form.getWidgetByName("ty");
if(value == "回场"){
ty.setEnable(false);

}
else {
ty.setEnable(true);
}

微信图片_20190725165719.png

FineReport 随便来看看 发布于 2019-7-25 17:01
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
1
doudekaixinLv6中级互助
发布于2019-7-26 09:04
_g().parameterEl.getWidgetByName("ty").setEnable(false);


最佳回答
0
Kevin-sLv7中级互助
发布于2019-7-25 17:08

不知道你三个控件名是什么,可以放 内置模板

  • 随便来看看 随便来看看(提问者) 第三的控件名称是 ty
    2019-07-25 17:10 
  • Kevin-s Kevin-s 回复 随便来看看(提问者) var province = this.options.form.getWidgetByName(\"province\"); var area = this.options.form.getWidgetByName(\"area\"); var thislen = this.getValue(area).length; if(thislen) { province.setVisible(true); this.options.form.getWidgetByName(\"label3\").setVisible(true); } else { province.setVisible(false); this.options.form.getWidgetByName(\"label3\").setVisible(false); alert(\"请选择地区\"); }用这个吧!setEnable感觉可能有问题,直接把她隐藏掉吧!参考JS根据条件控制参数控件是否显示(可用)-https://help.finereport.com/doc-view-1195.html这个是确认可以的
    2019-07-26 09:13 
  • Kevin-s Kevin-s 回复 随便来看看(提问者) 还可以将var value = this.getValue();改成var value = this.options.form.getWidgetByName(\"lx\").getValue();试试看
    2019-07-26 09:17 
  • Kevin-s Kevin-s 回复 随便来看看(提问者) 为啥你可以使用setEnable(),我电脑上好像都是用不了
    2019-07-26 09:31 
  • 3关注人数
  • 597浏览人数
  • 最后回答于:2019-7-26 09:04
    请选择关闭问题的原因
    确定 取消
    返回顶部