0

我在主页面的子页面弹出窗口中调用了以下函数。功能:

function getBenefitEdit(bfn_benefit, bfn_benefit_id, bfn_std_max_days, bfn_std_pcy_wait_days){
    document.forms[0].std_benefit_nm_policy_chg.value = bfn_benefit;
    document.forms[0].std_benefit_id_policy_chg.value = bfn_benefit_id;
    document.forms[0].std_max_days_policy_chg.value = bfn_std_max_days;
    document.forms[0].std_pcy_wait_days_policy_chg.value = bfn_std_pcy_wait_days;  
          document.forms[0].action = "nwrGetBenefitSTD.do";            
          document.forms[0].submit();
          window.opener.location.href = window.opener.location.href;
          window.close(); 
        }

我试图让新页面更新父页面,然后在关闭父页面时刷新父页面。不幸的是,虽然这在 FireFox 中有效,但在 IE 中却失败了。有什么建议么?

4

2 回答 2

2

我不知道为什么它在 IE 中不起作用,但你可以改用它:

window.opener.location.reload();

[更新] 您还可以将重新加载附加到onsubmit事件处理程序。

于 2013-04-12T16:43:39.063 回答
1

尝试按以下顺序调用末尾的几行:

window.opener.location.href = window.opener.location.href;
document.forms[0].submit();
window.close();

我猜想在 IE 中(或任何它不能工作的浏览器),当表单被提交(页面被留下)时,它不会允许与开启者通信。

于 2013-04-12T17:07:17.480 回答