說明: 關閉彈出窗口時刷新父窗口也可以說是關閉子窗口時自動刷新父窗口中的信息,即用戶通過window對象的open()方法打開一個新窗口(子窗口),當用 戶在該子窗口中進行了數據庫操作(如數據添加、修改和刪除等)之后,關閉子窗口時,系統會自動刷新父窗口來實時更新信息;
思路和技術:
主要應用window.open()語句打開新窗口,並在新窗口中應用opener屬性,該屬性返回一個引用,用於指定打開本窗口的窗口對象。
& 語法:
window.opener
window.opener.方法
window.opener.屬性
功能:返回的是一個窗口對象。opener屬性與打開該窗口的父窗口相聯系,當訪問子窗口中opener屬性時,返回的是父窗口,通過該屬性,可以使用父窗口對象中的方法和屬性。
注意:
如 果窗口不是由其他窗口打開的,在Netscape中這個屬性返回null;在IE中返回“未定義”(undefined)。undefined在一定程度 上等於null。需要說明的是,undefined不是JavaScript常數,如果讀者企圖使用undefined,那就真的返回“未定義”了。
reload()方法相當於單擊瀏覽器上的“刷新”(IE)或“Reload”(Netscap)按鈕
代碼1(打開新窗口):
<a href="#" onClick="Javascript:window.open('meeting_add.jsp','','width=560,height=397')">超鏈接</a>
代碼2(關閉彈出窗口並刷新主頁面):
<script language="javascript">
alert("會議記錄保存成功!");
window.opener.location.reload(); //刷新父窗口中的網頁
window.close();//關閉當前窗窗口
</script>
代碼3(關閉彈出窗口並刷新主頁面,重點推薦方法):
<script language="javascript">
function save(){
document.getElementById("pointsform").submit();
alert('保存成功');
window.opener.document.getElementById("cmd").value="query";
window.opener.document.getElementById("khxzform").submit();
window.close();
}
</script>
