`
guy19867
  • 浏览: 89502 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

window.showModalDialog返回父窗口的方法

    博客分类:
  • JSP
阅读更多
通常使用window.open的方式开启新窗口的话
要取得父窗口的控件,可以用window.opener来取得父窗口

然而如果使用showModalDialog的话...却无效
如果有需要的话,需要修改开启的语法以及showModalDialog中的语法

开启语法第2个参数请填写为window,范例如下 :
var rc=window.showModalDialog(strURL,window,sFeatures);
然后接着就是呼叫父窗口的语法
var pWindow=window.dialogArguments;
这样就可以取得父窗口的window对象控制了。例如:
window.dialogArguments.location.href="你的操作(Action或是页面转向等)";

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 = "输入的数据";
分享到:
评论

相关推荐

    Window.ShowModalDialog使用手册

    在JavaScript编程语言中,`Window.showModalDialog()`方法是一个非常重要的功能,主要用于打开一个模态对话框,即用户必须关闭对话框才能与父窗口进行交互。这个方法在创建用户交互和自定义弹出窗口场景中非常有用。...

    针对window.showmodaldialog弹出窗体无刷新的详细使用

    当对话框关闭时,父窗口可以通过`window.onmodaldialogreturn`事件监听返回值。但请注意,这个事件并不标准化,不同的浏览器可能有不同的实现。 7. **兼容性问题** `window.showModalDialog` 在一些现代浏览器中...

    window.showModalDialog以及window.open用法简介

    `window.open`的一个重要特性是,可以通过`window.opener`属性与打开新窗口的原始窗口(父窗口)进行通信。例如,如果在新窗口中输入数据并希望将其返回到父窗口,可以使用如下的代码: ```javascript window.opener...

    关于struts2里用javascript刷新window.showModalDialog的父页面

    - 在父窗口中,通过判断`window.showModalDialog`的返回值来决定是否刷新页面。 - 如果返回值为真,则执行`window.location.reload()`。 #### 注意事项 - **浏览器兼容性问题**:`window.showModalDialog`是IE...

    window.showModalDialog方法的使用

    在JavaScript编程中,`window.showModalDialog`是一个用于打开模态对话框的函数,它能够创建一个新的浏览器窗口或者在当前窗口内显示一个弹出层,阻止用户与父窗口的交互,直到用户关闭对话框为止。这个方法在创建...

    window.showModalDialog的一个domo模型

    2. **子窗口向父窗口传递值**:子窗口可以通过`window.returnValue`属性设置返回值,当子窗口关闭时,这个值会被返回给父窗口的`showModalDialog`调用。 3. **子窗口调用父窗口的方法**:子窗口可以获取对父窗口的...

    JavaScript中window.showModalDialog()用法详解

    - 当子窗口关闭时,其window.returnValue的值会被设置为父窗口中window.showModalDialog()方法调用的返回值。 - 在IE浏览器中,window.showModalDialog()方法支持得比较好,但在其它一些浏览器中可能不完全支持,...

    子窗口刷新父窗口总结

    这里的`retValue`是`window.showModalDialog()`返回的结果,根据业务逻辑判断是否需要刷新父窗口。 ### 总结 子窗口刷新父窗口是一个常见的需求,涉及到浏览器窗口间通信的技巧。无论是使用`window.open()`、`...

    showModalDialog使用例子,父窗口向子窗口传递值,子窗口设置父窗口的值,子窗口关闭的时候返回值到父窗口

    子窗口可以通过`window.opener`属性访问父窗口的对象和方法。但是,由于同源策略的限制,只有当子窗口与父窗口位于同一域时,才能修改父窗口的值。例如,子窗口可以这样设置父窗口的变量: ```javascript window....

    showModalDialog跨域解决例子

    4. **Window.postMessage()**:当`showModalDialog`打开的新窗口和父窗口在同一浏览器实例中时,可以利用`postMessage` API进行跨窗口通信。通过向新窗口发送消息,然后在新窗口中监听这些消息,实现跨域数据交换。 ...

    Window.showDialog详解合集

    在这个例子中,`dialogPage.jsp`是弹出的对话框页面,`window`表示对话框的父窗口,`"dialogWidth:500px;dialogHeight:400px;center:yes;status:no"`是一些配置参数,定义了对话框的大小、居中显示和不显示状态栏。 ...

    JS弹出窗口的各种传值方法.pdf

    `window.showModalDialog()`方法创建一个模态对话框,即用户必须先关闭子窗口才能与父窗口交互。此方法接受三个参数:URL(子窗口的地址)、对话框的初始值和对话框属性字符串。 在父窗口的HTML代码中,我们有一个`...

    js(javascript)子窗口和父窗口交互

    根据题目提供的信息,本文将详细介绍两种实现父窗口与子窗口交互的方法。 #### 一、通过 `window.open()` 方法实现交互 `window.open()` 是一种常见的创建新窗口的方式。通过这种方式可以灵活地控制新打开窗口的...

    谷歌showModalDialog()方法不兼容出现对话窗口的解决办法

    - 需要注意的是,`window.open()`并不会自动阻止用户与父窗口的交互,所以需要手动处理,例如通过监听新窗口的关闭事件并在事件处理程序中执行相应操作。 3. **处理返回值**: - `showModalDialog()`会返回一个值...

    window.returnValue使用方法示例介绍

    当你在模式对话框中设置 `window.returnValue`,然后调用 `window.close()` 关闭对话框时,这个值就会被返回给父窗口。在上面的示例中,`child.html` 中有两个按钮,分别设置 `window.returnValue` 为 `true` 或 `...

    子窗口向父窗口传递值

    `showModalDialog()`可以返回一个值,这个值可以作为对话框关闭时的结果传递给父窗口。 总结一下,子窗口向父窗口传递值主要依赖于`window.parent`和`window.opener`这两个属性,它们允许子窗口访问并操作父窗口的...

    关于jsp网页设计的模态和非模态窗口

    可以使用 window.showModalDialog()方法传递参数,并调用父窗口的方法。 实践示例 可以使用以下代码来调用模态窗口并传递参数: parent.htm: ```html function show(){ alert("show"); } var arg = new ...

    showModalDialog模态对话框的使用详解以及浏览器兼容

    在Chrome中,此方法的表现与`window.open`类似,父窗口可以正常获取焦点,且`returnValue`通常返回`undefined`。在其他浏览器,如Firefox和Internet Explorer,`showModalDialog`通常能正确实现模态对话框的效果。 ...

    showModalDialog参数使用详解

    1. **对话框返回值**:当对话框关闭时,可以通过`showModalDialog`调用返回一个值,这个值可以在父窗口中获取。例如,在子窗口中设置`window.returnValue`,然后在父窗口中通过`window.showModalDialog`的返回值来...

    js对话框传递参数

    在子窗口中,可以直接设置`window.returnValue`的值,这个值最终会被返回给父窗口。 2. **父页面接收返回值**: ```javascript var str = window.showModalDialog("modal.htm", "", "dialogWidth=200px;...

Global site tag (gtag.js) - Google Analytics