JavaScript window.showModalDialog()父窗体与子窗体通信传值

本篇主要介绍使用window.showModalDialog()时如何在父窗体与子窗体之间传值,通信

有关window.open()父窗体与子窗体之间的通信请点击:

JavaScript window.open父窗体与子窗体之间的通信

window.showModalDialog()并不能像window.open()那样可以直接获取父窗体句柄,但是可以通过returnValue返回到父页面的值。

父页面页面:a.html:

var getValue = showModalDialog('b.html','','参数');
console.log(getValue);//打印子页面传来的值

子页面:b.html

window.returnValue = "传到父页面的值";
window.close();

当然如果想刷新父页面也很简单,因为showModalDialog为阻断式的,在show()之后的代码将不会执行,直到子窗体关闭之后,所以要刷新父页面在show之后调用即可:

var getValue = showModalDialog('b.html','','参数');

//一下代码不会执行直到上面创建的window关闭

console.log(getValue);//打印子页面传来的值

//子window关闭之后,代码继续执行,添加刷新当前页面代码即可
// refresh();

 

发表评论