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

通常使用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 = "输入的数据";

(0)

相关推荐

  • JS中showModalDialog关闭子窗口刷新主窗口用法详解

    本文实例讲述了JS中showModalDialog关闭子窗口刷新主窗口用法.分享给大家供大家参考,具体如下: 网上找了好长时间 大都是window.opener.location.reload(),等等 都不是我想要的 最后终于发现了一个 想知道的就往下看看吧 showModalDialog和showModelessDialog 一.showModalDialog和showModelessDialog有什么不同? showModalDialog:被打开后就会始终保持输入焦点.除非对话框被关闭,否

  • javascript showModalDialog模态对话框使用说明

    1. 标准的方法 复制代码 代码如下: <script type="text/javascript"> function openWin(src, width, height, showScroll){ window.showModalDialog (src,"","location:No;status:No;help:No;dialogWidth:"+width+";dialogHeight:"+height+&

  • JS中showModalDialog 的使用解析

    基本介绍: window.showModalDialog()         方法用来创建一个显示HTML内容的模态对话框.(就是打开后不能操作父窗口,只能等模式                                  窗口关闭时才能操作) window.showModelessDialog()        方法用来创建一个显示HTML内容的非模态对话框.(就是打开后仍然可以进行其他的操作) 使用方法: vReturnValue = window.showModalDialog(sU

  • JavaScript中window.showModalDialog()用法详解

    今天在项目中用到了弹出子窗口,就想到了用JavaScript实现的两种方法,一个是window.open();一个是window.showModalDialog()方法,后者是存在父子关系的一种弹出窗口,只有子窗关闭,父窗口才激活,并且可以传送参数和返回值.正好又温习一遍用法,顺便在此记录过程中遇到的问题. 基本介绍: showModalDialog() (IE 4+ 支持) showModelessDialog() (IE 5+ 支持) window.showModalDialog()方法用来

  • Javascript showModalDialog两个窗体之间传值

    Javascript 两个窗体之间传值实现代码javascript中还有一个函数window.showModalDialog也可以打开一个新窗体,不过他打开的是一个模态窗口,那么如何在父窗体和子窗体之间传值呢?我们先看该函数的定义:vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures]) 参数说明: sURL--必选参数,类型:字符串.用来指定对话框要显示的文档的URL. vArguments--可选参数,类型

  • javascript showModalDialog 内跳转页面的问题

    查看了一下代码,发现跳转链接中使用的是location,而直接使用A生成的链接,在点击跳转时,却不会弹出新的页面. 解决: 通过JS脚本,来模拟点击了A这样的链接,而不使用location试了一下: 复制代码 代码如下: function go_link(url) { var link = document.createElement("a"); link.href = url; document.body.appendChild(link); link.click(); } 在调用l

  • js showModalDialog 弹出对话框的简单实例(子窗体)

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="showdialog_dialog.aspx.cs" Inherits="WSHelpDoc_showdialog_dialog" %> 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo

  • javascript showModalDialog传值与FireFox的window.open 父子窗口传值示例第1/2页

    先简单介绍一下基本知识: 一.window.open()支持环境: Java1.0+/J1.0+/Nav2+/IE3+/Opera3+ 二.基本语法: window.open(pageURL,name,parameters) 其中: pageURL 为子窗口路径 name 为子窗口句柄 parameters 为窗口参数(各参数用逗号分隔) 三.各项参数 其中yes/no也可使用1/0:pixel value为具体的数值,单位象素. 参数 | 取值范围 | 说明 alwaysLowered | y

  • js showModalDialog弹出窗口实例详解

    showModalDialog:模式窗口, 一种很特别的窗口,当它打开时,后面的父窗口的活动会停止,除非当前的模式子窗口关闭了, 才能操作父窗口.在做网页Ajax开发时,我们应该有时会用到它来实现表单的填写, 或做类似网上答题的窗口. 它的特点是,传参很方便也很强大,可直接调用父窗口的变量和方法. 使用方法:  vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures]) 参数说明:  sURL--  必选参数,类

  • JS对话框_JS模态对话框showModalDialog用法总结

    父窗口: 复制代码 代码如下: <html><head><title>无标题页</title><script language="javascript" type="text/javascript">function opendialog1() { var someValue=window.showModalDialog("b.html","","dialo

  • js showModalDialog参数的使用详解

    基本介绍: showModalDialog()              (IE 4+ 支持)showModelessDialog()           (IE 5+ 支持)window.showModalDialog()       方法用来创建一个显示HTML内容的模态对话框.window.showModelessDialog()    方法用来创建一个显示HTML内容的非模态对话框. 使用方法: vReturnValue = window.showModalDialog(sURL [,

  • javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码

    在第N(N>1)层的模态页面中,如果想链接到其他页面或者刷新当前页,只能用 window.name = "__self"; window.open(window.location.href, "__self") //注意是2个下划线 替换 location.href 当需要关闭第N(N>1)层的模态窗口,并刷新第N-1层的模态页面时, 为防止刷新时弹出新窗口, 可以通过returnValue 以传递返回值给第N-1层模态窗口,来确认是否需要刷新 在按钮的

  • js的window.showModalDialog及window.open用法实例分析

    本文实例讲述了js的window.showModalDialog及window.open用法.分享给大家供大家参考.具体分析如下: 一.window.open()支持环境: JavaScript1.0+/JScript1.0+/Nav2+/IE3+/Opera3+ 二.基本语法: window.open(pageURL,name,parameters) 其中: pageURL 为子窗口路径 name 为子窗口句柄 parameters 为窗口参数(各参数用逗号分隔) 三.示例: <SCRIPT>

随机推荐