情况:用window.open()打开子窗口时候,如果子窗口要得到父窗口页面的某一个值,有两种办法:第一种将父窗口的那个值保存到formbean中然后在子窗口中用隐藏域得到,第二种就是在子窗口中用window.opener.document.getElementById("").value;
此时在子窗口做了某些操作要刷新父窗口,可以用window.opener.document.location.reload();来刷新父窗口.
注意:有时候用上面的方法刷新父页面的时候会出现个“重试”跟 “取消”的对话框!所以用以下代码可以解决:
window.opener.location.href=window.opener.location.href;
如果用showModalDialog模式窗口的话,父页面中要在参数中写明要传输的对象。例如:
window.showModalDialog("/abc.do?method=list"&typeId="+typeId+"&time=<%=new java.util.Date().getTime() %>",window, "center:yes;dialogHeight:505px;dialogWidth:630px;toolbar:no;menubar:no;scrollbars:no;resizable:no;location:no;status:no;");
其中"window"就为要传输的对象,意思是将父页面的的整个对象传输到子页面里去。
所以在(如果父页面调模式窗口)子页面中就可以用window.dialogArguments来接受父页面传输过来的参数。
来或许父页面的任何值。