如何在IE,Firefox,Opera浏览器中支持页面弹出并回传数据

在IE中, 弹出模态框可直接使用JS方法: ShowModalDialog(), 这个方法在

Firefox3.0以后被支持, 但在较老版本的Firefox和Opera中均不被支持. 需要使

用JS标准的window.open()方法.

window.open的语法如下:

oNewWindow = window.open( [sURL] [, sName] [, sFeatures] [,

bReplace])

返回当前弹出页面对象. 在弹出窗口中, 可使用window.opener来获得父窗口

对象, 可通过直接访问父窗口的客户端控件或者调用其JS方法进行操作:

window.opener.SetValues(val1, val2...);

在实际开发中, 经常遇到这样一个问题. 就是根据子窗口返回的值对父窗口进

行刷新, 但这个刷新一般只是部分刷新, 而不是刷新整个页面. 对于这种情况,

可以用Ajax在JS中调用后台方法实现. 不过笔者推荐另外一种刷新方法, 更简单,

更方便, 且效果不错. 就是在JS中虚拟某个按钮的点击, 并在该按钮的点击相应

函数中对页面做刷新操作.

function SetValue(strMsg)
{
   // 这里可以将传入的值记录到hidden控件中,
   // 后来按钮响应函数从hidden控件中取值操作.
   var button = document.getElementById("<%= Button2.ClientID %

>");
   button.click();
}

这样就简单实现了IE, Firefox, Opera中弹出页面框并将值回传.

可以将虚拟点击的按钮放到一个div中, 并将div的display属性设置为"none",

因为如果直接设置button的size为(0,0)的话, 在Firefox和Opera下显示会不正常

. 具体可参考源码, Default.aspx页面为父页面, Child.aspx为子页面, 运行时

将Default.aspx设置为起始页面即可.

本文配套源码

时间: 2024-09-19 09:15:33

如何在IE,Firefox,Opera浏览器中支持页面弹出并回传数据的相关文章

如何变更Opera浏览器中的默认搜索?

  Opera浏览器,是一款挪威Opera Software ASA公司制作的支持多页面标签式浏览的网络浏览器.是跨平台浏览器可以在Windows.Mac和Linux三个操作系统平台上运行.Opera浏览器因为它的快速.小巧和比其他浏览器更佳的标准兼容性获得了国际上的最终用户和业界媒体的承认,并在网上受到很多人的推崇.由于它能支持多种操作系统,在企业中是非常受人欢迎的,很多人因此习惯用它作为浏览器,在浏览器中都包含搜索框,如何修改默认的搜索引擎呢?答案是肯定的,下面就和小编一起看看Win7变更默

Opera浏览器中的默认搜索怎么更改

  Opera浏览器,相信不少人都在使用.而大家都知道,在浏览器中都包含搜索框,如何修改默认的搜索引擎呢?答案是肯定的,下面就和小编一起看看Win7变更默认Opera浏览器搜索框的方法. 变更Opera浏览器中默认搜索的方法 1.首先将这款Opera浏览器双击打开,然后在浏览器上方的窗口中找到左上角的Opera图标并单击,这样就会出现一个下滑菜单,在这个菜单中点击设置选项. 2.进入到Opera浏览器的设置窗口之后,在右侧搜索栏目下就可以看到目前的默认浏览器为谷歌搜索了,如果想要对这个默认浏览器

如何在java中实现依次弹出窗体?

问题描述 如何在java中实现依次弹出窗体? 5C 具体要求如下,窗体都是jframe,主窗体中有n个复选框,每个复选框对应一个窗体,勾选完以后,点击按钮,根据是否选中复选框,依次按顺序从上到下将复选框的窗体弹出,要求在前一个窗体关闭后,才能弹出下一个窗体.这个机制如何实现? 解决方案 了解下 JDialog并且注意它的 setModal(true)属性 解决方案二: 了解下 JDialog并且注意它的 setModal(true)属性 解决方案三: 那怎么知道前一个窗体关了没有,, 解决方案四

javascript-js中调用ie浏览器,总是会弹出框框,何不让他弹出框

问题描述 js中调用ie浏览器,总是会弹出框框,何不让他弹出框 最近在js中调用打印机,但是又要他不弹出框框,直接打印,windows.print()会弹出框,webbrower的也总是会弹出框,还看到用activeX或者scriptX控件的,如果我不用控件能够实现吗? 求大神帮忙!!! 解决方案 自己写插件应该可以,调用系统默认的去掉不了,调用客户端资源有安全问题

浏览器要怎么阻止弹出窗口

Internet Explorer 8 (简称 IE8)是为全世界所广泛使用的 Windows Internet Explorer 浏览器系列的最新版本,它集成了更多个性化.智能化.隐私保护的新功能,为您的网络生活注入新体验,让您每一天的网上冲浪更快捷.更简单.更安全,并且充 满乐趣. 浏览器的阻止窗口弹出功能,能避免用户在浏览网页的时候弹出多个跟本页不相关的广告网站,要知道很多网站都带有钓鱼程序,浏览器这个自带的功能保护了我们的电脑安全. 操作步骤 1.打开注册表编辑器,找到HKEY_CURR

教你如何清除RM文件中的恶意弹出广告

给普通rm文件加入弹出广告功能,操作并不复杂,现在网上已经出现具备类似功能的共享软件. 那么有没有办法清除这些RM文件的弹出窗口广告呢? 实际上可以在影片中添加事件(events)是rm文件的特性之一.用户可以安装 RealProducerPlus(Realnetworks的官方产品之一) 来对rm文件进行编辑.制作.修改.其安装目录下的ealMediaEditor/rmevents.exe可执行文件正是用来为rm文件插入事件的命令行程序.你可以任意新建一个文本文件,比如myevents.txt

Android实现类似于PC中的右键弹出菜单效果_Android

 Android系统中的ContextMenu(上下文菜单)类似于PC中的右键弹出菜单,当一个视图注册到一个上下文菜单时,执行一个在该对象上的"长按"动作,将出现一个提供相关功能的浮动菜单.上下文菜单可以被注册到任何视图对象中,不过,最常见的是用于列表视图ListView的item,在按中列表项时,会转换其背景色而提示将呈现上下文菜单. 注意:上下文菜单不支持图标和快捷键. 为了创建一个上下文菜单,你必须重写这个活动的上下文菜单回调函数:onCreateContextMenu() 和

Java中对话框的弹出方法_java

最近在做学校的课程设计,java编程需要用到对话框弹出,第一反应是js中的alert和confirm,java的话瞬间懵,查阅学习总结如下,用以以后的学习 1.显示一个错误对话框,该对话框显示的 message 为 'alert': JOptionPane.showMessageDialog(null, "alert", "alert", JOptionPane.ERROR_MESSAGE); 2.显示一个内部信息对话框,其 message 为 'informati

iOS中利用inputView 弹出 picker_IOS

推荐一个Button 弹起PickerView的源码,也可以作为工具类使用. 利用inputView 做键盘弹起动画.该如何做呢? 1.继承UIView 2.重写属性&方法 @property (readwrite) UIView *inputView; @property (readwrite) UIView *inputAccessoryView; - (BOOL)isUserInteractionEnabled { return YES; } - (BOOL)canBecomeFirstR