window.opener showModelessDialog showModalDialog 获取|控制父窗体的区别

window.opener :页面a中的链接点击后打开了页面b,那么可以在b中通过如下js控制a

b中的js

window.opener.document.getElementById("Text1").value = "33344";

这样就可以将页面a中的id为Text1的控件的值设置为33344

但是showModelessDialog 则不能使用这样的方法来获取其父级窗体

如果要在showModelessDialog 中的非模态窗体中控制其父窗体的控件需要如下代码

window.showModelessDialog('default2.aspx', {doc:document,win:parent}, 'status:no;help:no;resizable:no;scroll:no;dialogWidth:398px;dialogHeight:200px');

非模态窗体中的代码

dialogArguments.doc.all.Text1.value ="123";

需要注意的2点

1:showModelessDialog的第二个参数很关键2:子窗口的dialogArguments对象来控制很重要

原文地址:https://www.cnblogs.com/lorgine/p/2287221.html