请问怎么让\'主表\'通过点击超链打开对话框的\'子表\',这个子表自动提交-关闭页面-刷新\'主表\'页面?

JMP.png

大家好,请问怎么让'主表'通过点击超链打开对话框的'子表',这个子表自动提交-关闭页面-刷新'主表'页面?提交后关闭当前页面并刷新主页面的JS可以实现,但是怎么自动提交呢?setTimeout(function(){contentPane.writeReport();},10000);👆这个JS放在子表加载结束里,单独打开子表可以实现效果,可是从主表超链过来却未实现效果

FineReport 牛气冲天的哇 发布于 2021-11-23 16:01
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
快乐星光Lv5中级互助
发布于2021-11-23 16:41(编辑于 2021-11-23 16:45)

FR.Msg.confirm("警告","确定要将该物料的负责人修改为("+a+")吗?",function(value){  

    if(value){  

        _g('${sessionID}').writeReport(); //提交本窗口(子窗口)

        window.parent._g().parameterCommit();      

        //刷新父窗口,并保留参数面板所选的控件值       

         //window.parent.location.reload();   

        window.parent.FR.closeDialog(); //关闭父窗口弹窗窗口

        window.parent.FR.destroyDialog();

        window.parent._g().writeReport();//父窗口提交

    }else{  

         

    }  

}) 

我这个除了父窗口提交没试过,其他都是可以用的,你把最后一个加上去试一下。我这个是写在子表的自定义提交按钮的点击事件里面的。

  • 牛气冲天的哇 牛气冲天的哇(提问者) 谢谢呀 不过我就是想省个点击提交的步骤,在主表点开子表就自动提交子表~
    2021-11-23 17:30 
  • 快乐星光 快乐星光 回复 牛气冲天的哇(提问者) 你可以试一下在子表-模板web属性-填报页面设置-添加加载结束事件:js内容: _g(\'${sessionID}\').writeReport();//提交事件 。然后再添加提交成功事件:js内容:window.parent._g().parameterCommit(); //刷新父窗口,并保留参数面板所选的控件值 //window.parent.location.reload(); window.parent.FR.closeDialog(); //关闭父窗口弹窗窗口 window.parent.FR.destroyDialog(); //window.parent._g().writeReport();//父窗口提交 或者只添加加载结束事件,把这连个js内容写在一起。
    2021-11-24 08:37 
  • 快乐星光 快乐星光 回复 牛气冲天的哇(提问者) 子表的超级连接要设置成填报模式:报表路径后面加:&op=write
    2021-11-24 08:39 
  • 快乐星光 快乐星光 回复 牛气冲天的哇(提问者) 我刚测试了一下,可以实现,最好直接把主表传参放到报表填报属性的字段值里面,如果放到子表表格里面参数填报不进去。
    2021-11-24 08:50 
  • 牛气冲天的哇 牛气冲天的哇(提问者) 回复 快乐星光 唔~!谢谢你!我研究研究
    2021-11-24 09:16 
最佳回答
0
孤陌Lv6资深互助
发布于2021-11-23 16:06

在加载结束 事件里 设置填报属性  然后在在回调函数里写 JS 

  • 圣体叶小凡 圣体叶小凡 把js交出来~
    2021-11-23 16:08 
  • 孤陌 孤陌 回复 圣体叶小凡 就一个填报成功后 关闭 刷新的JS 不需要我写了啊 他本来自己就会
    2021-11-23 16:32 
  • 牛气冲天的哇 牛气冲天的哇(提问者) 咳咳尴尬....暂时还不会写JS,上门那个是搜的
    2021-11-23 17:26 
最佳回答
0
ybc1072109138Lv5见习互助
发布于2021-11-23 17:17

if (FR.Mobile) {        window.close();}else{    window.parent.FR.closeDialog();    window.parent.contentPane.parameterCommit();   //报表父页面查询      }

  • 圣体叶小凡 圣体叶小凡 放在填报成功事件里面,把父页面挂在决策平台,亲测有效
    2021-11-23 17:27 
  • 牛气冲天的哇 牛气冲天的哇(提问者) 回复 圣体叶小凡 欧 试了下发现没效果 我可能不会用.....
    2021-11-23 22:22 
  • 圣体叶小凡 圣体叶小凡 回复 牛气冲天的哇(提问者) `````这个放在弹出框子表的填报属性里面,然后父页面挂在决策平台,用填报预览模式,这样试一试,提交子表,重新查询父页面
    2021-11-24 09:11 
  • 牛气冲天的哇 牛气冲天的哇(提问者) 回复 圣体叶小凡 谢谢谢谢~阔以辣
    2021-11-24 10:13 
  • 4关注人数
  • 361浏览人数
  • 最后回答于:2021-11-23 17:17
    请选择关闭问题的原因
    确定 取消
    返回顶部