找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,极速登录

超级连接的子表是用js来超链的,这样有什么办法刷新父表和关闭子表。

超级连接的子表是用js来超链的,这样有什么办法刷新父表和关闭子表。

主表与子表1.jpg

主表子表2.jpg

FineReport快乐星光 发布于 2021-11-26 10:18
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
luojian0323Lv7高级互助
发布于2021-11-26 10:21(编辑于 2021-11-26 13:49)

js以对话框打开报表

var $iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='no' frameborder='0'>"); // iframe参数的命名及宽高等 $iframe.attr("src", "${servletURL}?reportlet=目录/报表名.cpt&op=write"); //点击查询时,对话框中显示的子报表 var o = { title : "标题", width : 1000, height: 500 }; FR.showDialog(o.title, o.width, o.height, $iframe,0); //首先弹出对话框

刷新父表,在子表中添加这个代码:parent.reload();//刷新父窗口

window.parent.FR.closeDialog(); //确定获取值后,关闭取消父窗口的对话框

window.parent.FR.destroyDialog();//销毁对话框。

  • 快乐星光 快乐星光(提问者) 你这个在正常超链接方式下是可以用的,在我这情况下不管用。已经试过了
    2021-11-26 11:38 
  • luojian0323 luojian0323 回复 快乐星光(提问者) 打开新标签页,就不叫主子报表了。概念要搞清楚。正常说的主子报表,是指页面中同时展示主表和子表,子表是对话框的形式展示。
    2021-11-26 13:31 
  • 快乐星光 快乐星光(提问者) 回复 luojian0323 var cptpath=\"测试/填报_项目设备明细.cpt\"; var url = FR.cjkEncode(\"${servletURL}?reportlet=\"+cptpath+\"&op=write\"+\"&alltb=\"+addxm); window.open(url); 如果用这种方式打开新窗口,怎么刷新父窗口?
    2021-11-26 13:38 
  • luojian0323 luojian0323 回复 快乐星光(提问者) 子窗口设置填报成功后事件。写上我上面的代码,只要子窗口是对话框的形式打开,就可以。
    2021-11-26 13:48 
  • 快乐星光 快乐星光(提问者) 回复 luojian0323 我试了一下,可以打开对话框,你这个js可以传递参数吗,怎么写?
    2021-11-26 14:15 
  • 2关注人数
  • 73浏览人数
  • 最后回答于:2021-11-26 13:49
    请选择关闭问题的原因
    确定 取消

    联系社区管理员|联系帆软|《帆软社区协议》|手机版|帆软社区|Copyright © 帆软软件有限公司 ( 苏ICP备18065767号-7 )

    GMT+8, 2021-12-9 16:04 , Processed in 0.557625 second(s), 38 queries , Gzip On.

    返回顶部