javascript关于window.open子页面执行完成后刷新父页面的方法及传送数据给父页面
父页面
HTML Code
    <input 
        id="btnAdd"
        type="button"
        onclick="openWin();"
        value="点击出子窗口"
    />
JS Code
function openWin() {
    window.open(
        'win.html',
        '_blank',
        'width=300,height=400,top=200,left=400'
    );
}
//定义callback方法,用于回调
function callback(data) {
    console.log(data)
}
子页面
HTML Code
    <input 
        id="onSub" 
        type="button"
        onclick="formSubmit();"
        value="点击传送数据到父页面,同时关闭当前小窗口" 
    />
JS Code
function formSubmit(){
    var data = {
        name:'shenbao',
        age: 18,
    };
    window.opener.callback(data);
    //上述执行完成后,调用打开页面的callback方法,
    //此处是调用主页面的callback方法
    window.close();//当前页面关闭
}
判断父窗口的状态
if(window.opener && !window.opener.closed)
刷新父窗口
- window.opener.location.reload();这个方法在强迫父窗口的时候,在有些IE浏览器(比如安全设置高)的情况下,会弹出一个确认对话框,提示是不是要重新再刷新一次页面,这可是比较郁闷的事情哦
- window.opener.location.href=window.opener.location.href;用这个就不会有问题
【 THE END 】
------ ShenBao on April 19, 2017
    温馨提示:评论可能需要科学上网,若不能正常显示,敬请谅解!
  
  
  
   
