javascript showModalDialog,open取得父窗口的方法


Posted in Javascript onMarch 10, 2010

通常使用window.open的方式开启新窗口的话
要取得父窗口的控件,可以用window.opener来取得父窗口
然而如果使用showModalDialog的话...却无效
如果有需要的话,需要修改开启的语法以及showModalDialog中的语法
开启语法第2个参数请下self,范例如下
var rc=window.showModalDialog(strURL,self,sFeatures);
然后接着就是呼叫父窗口的语法
var pWindow=window.dialogArguments;
这样就可以取得父窗口的window对象控制了。例如:
window.dialogArguments.document.getElementsByName("processId")[0].value;

js中 opener和parent的区别

opener即谁打开我的,比如A页面利用window.open弹出了B页面窗口,那么A页面所在窗口就是B页面的
opener,在B页面通过opener对象可以访问A页面。
parent表示父窗口,比如一个A页面利用iframe或frame调用B页面,那么A页面所在窗口就是B页面的
parent。
在JS中,window.opener只是对弹出窗口的母窗口的一个引用。比如:
a.html中,通过点击按钮等方式window.open出一个新的窗口b.html。那么在b.html中,就可以通过
window.opener(省略写为opener)来引用a.html,包括a.html的document等对象,操作a.html的内容。
假如这个引用失败,那么将返回null。所以在调用opener的对象前,要先判断对象是否为null,否则会
出现“对象为空或者不存在”的JS错误。

<html> 
<body> 
<form. name=form1> 
<input type=text name=inpu > 
<input type=button > 
</form> 
</body> 
</html>

back2opener.html
<html> 
<body> 
<form. name=form1> 
<input type=text name=inpu > 
<a class=under href=# >添加</a> 
</form> 
</body> 
</html>

window.opener 返回的是创建当前窗口的那个窗口的引用,比如点击了a.htm上的一个链接而打开了
b.htm,然后我们打算在b.htm上输入一个值然后赋予a.htm上的一个id为“name”的textbox中,就可以
写为:
window.opener.document.getElementById("name").value = "输入的数据";
Javascript 相关文章推荐
跨浏览器的设置innerHTML方法
Sep 18 Javascript
js setTimeout()函数介绍及应用以倒计时为例
Dec 12 Javascript
Javascript中call的两种用法实例
Dec 13 Javascript
node.js抓取并分析网页内容有无特殊内容的js文件
Nov 17 Javascript
AngularJS使用ngMessages进行表单验证
Dec 27 Javascript
JavaScript的设计模式经典之代理模式
Feb 24 Javascript
解决JS组件bootstrap table分页实现过程中遇到的问题
Apr 21 Javascript
jQuery使用中可能被XSS攻击的一些危险环节提醒
May 24 Javascript
详解vue2.0+vue-video-player实现hls播放全过程
Mar 02 Javascript
vue+springmvc导出excel数据的实现代码
Jun 27 Javascript
Django+vue跨域问题解决的详细步骤
Jan 20 Javascript
在Angular项目使用socket.io实现通信的方法
Jan 05 Javascript
ExtJs3.0中Store添加 baseParams 的Bug
Mar 10 #Javascript
js Date自定义函数 延迟脚本执行
Mar 10 #Javascript
js 蒙版进度条(结合图片)
Mar 10 #Javascript
javascript 事件查询综合 推荐收藏
Mar 10 #Javascript
JQuery的html(data)方法与&amp;lt;script&amp;gt;脚本块的解决方法
Mar 09 #Javascript
Jquery替换已存在于element上的event的方法
Mar 09 #Javascript
JQery jstree 大数据量问题解决方法
Mar 09 #Javascript
You might like
解析百度搜索结果link?url=参数分析 (全)
2012/10/09 PHP
深入phpMyAdmin的安装与配置的详细步骤
2013/05/07 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
2014/11/24 PHP
JQuery 学习笔记 选择器之二
2009/07/23 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
JS对象转换为Jquery对象示例
2014/01/26 Javascript
extjs 如何给column 加上提示
2014/07/29 Javascript
jQuery CSS()方法改变现有的CSS样式表
2014/09/09 Javascript
javascript基本类型详解
2014/11/28 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
浅析script标签中的defer与async属性
2016/11/30 Javascript
canvas 实现中国象棋
2017/02/17 Javascript
javascript 中的try catch应用总结
2017/04/01 Javascript
vue2.0 自定义日期时间过滤器
2017/06/07 Javascript
JavaScript设计模式之单例模式详解
2017/06/09 Javascript
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
js单线程的本质 Event Loop解析
2019/10/29 Javascript
JS实现打字游戏
2019/12/17 Javascript
Vue+Node服务器查询Mongo数据库及页面数据传递操作实例分析
2019/12/20 Javascript
VUE 项目在IE11白屏报错 SCRIPT1002: 语法错误的解决
2020/09/27 Javascript
python魔法方法-属性转换和类的表示详解
2016/07/22 Python
Python遍历某目录下的所有文件夹与文件路径
2018/03/15 Python
Python实现基于KNN算法的笔迹识别功能详解
2018/07/09 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
Python3使用TCP编写一个简易的文件下载器功能
2019/05/08 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
基于PyQT实现区分左键双击和单击
2020/05/19 Python
英国珠宝网站Argento: PANDORA、Olivia Burton和Nomination等
2020/05/08 全球购物
大学生个人自荐信样本
2014/03/02 职场文书
保护地球的标语
2014/06/17 职场文书
销售人员求职信
2014/07/22 职场文书
详细的本科生职业生涯规划范文
2014/09/16 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
实习指导教师评语
2014/12/30 职场文书
员工工作能力评语
2014/12/31 职场文书
MySQL中IO问题的深入分析与优化
2022/04/02 MySQL