时间:2021-05-26
因系统要兼容原IE已使用的关闭方法,经调试测得,需对window.dialogArguments进行再较验,不然易出问题。
function OKEnd(vals) { if (vals == null) vals = "TRUE"; if (typeof (window.opener) == "undefined") { if (typeof (window.dialogArguments) != "undefined") { if (window.dialogArguments && window.dialogArguments != null) { window.opener = window.dialogArguments; if (window.opener && window.opener != null) { window.opener.ReturnValue = vals; } } } } else { if (window.opener && window.opener != null) { window.opener.ReturnValue = vals; } } window.returnValue = vals; self.close();}返回值接收的,只需在原有IE的接收模式下,多较验一下opener就可以了,如下:
//选择变更部门 function SetOrganizeTree2() { var url="弹出页面"; var ret = window.showModalDialog(url, window, "dialogWidth=400px;dialogHeight=500px;status=no;help=no;scroll=yes;resizable=yes;"); if (typeof (ret) == "undefined") { ret = window.ReturnValue; } if (ret) { document.getElementById("hidDeptCode2").value = ret; document.getElementById("btnDeptCodeAdd").click(); } return false; }JS模态窗口返回值兼容问题完美解决方法
1、打开弹出窗口时把 window 作为第二个参数传入。
2、在弹出窗口中,执行如下JS,以接收传入的window
3、弹出窗口关闭前,调用如下JS赋返回值
原理探讨:
chrome下,标准方法,在弹出页面不回发的情况下,是可以返回值的。 有回发则不能正常返回值。此方法可以解决。
IE下标准方法,有时不明原因不能正确返回值,此方法可解决。
FF未详细测试,应该问题不大。
以上这篇JS模态窗口返回值兼容问题的完美解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
没有找到太好的解决办法,暂时处理方法是,在弹出窗口中同时给window.opener.ReturnValue赋返回值。这样在关闭窗口后,通过下面的代码取得返回值
python中return不返回值是因为你没有将返回的值取出来。解决方法:调用函数,将函数的返回值赋给一个变量,输出这个变量就可以看到函数的返回值了示例如下:d
本文实例讲述了PHP调用存储过程返回值不一致问题的解决方法。分享给大家供大家参考,具体如下:今天遇一个同学聊存储过程返回值经常得到意外的值为null,因为白天有
showModalDialog的返回值在IE、火狐下面都能够获取返回值,但是在谷歌浏览器下面会返回Null,下面介绍解决方法父页面:复制代码代码如下:funct
AndroidsetButtonDrawable()的兼容问题解决办法setButtonDrawable()的兼容问题API16实现/***Settheback