`
flashdream8
  • 浏览: 668197 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

window.open打开一个新窗口/子窗口中调用父窗口的方法

阅读更多

window.open 只打开一个窗口是将

     oNewWindow   =   window   .   open   (   sURL   ,   sName   ,   sFeatures   ,   bReplace   )

中的sName 设置成一个固定值,如果有框架的话设置成“_top”

语法:  
  oNewWindow   =   window   .   open   (   sURL   ,   sName   ,   sFeatures   ,   bReplace   )    
  参数:  
  sUrl     :   可选项。字符串(String)。指定要被加载的HTML文档的   URL   地址。假如无指定值,则   about:blank   的新窗口会被显示。    
  sName     :   可选项。字符串(String)。   指定打开的窗口的名字。这个名字可以用于   form   或   a   对象的   TARGET   属性。此名字也可以使用下列通用名称:   _media     :   IE6.0     在浏览器左边的媒体面板内打开   sUrl   。    
  _blank     :     在新窗口中打开   sUrl   。    
  _parent     :     在当前框架的父框架内打开。假如当前框架无父框架,此参数值等同于   _self   。    
  _search     :   IE5.0     在浏览器左边的搜索面板内打开   sUrl   。    
  _self     :     sUrl   在当前窗口中打开,覆盖当前文档。    
  _top     :     在所有框架之外的最顶层窗口中打开   sUrl   。假如当前窗口无框架结构,此参数值等同于   _self   。
   
     
  sFeatures     :   可选项。字符串(String)。   指定窗口装饰样式。使用下面的值。多个之间用逗号隔开。只有当新的浏览器窗口被建立时,此参数的设置才会发生作用。   channelmode   =   {   yes   |   no   |   1   |   0   }        指定是否将窗口显示为频道模式。默认值为   no   。    
  directories   =   {   yes   |   no   |   1   |   0   }        指定是否显示「链接」按钮。默认值为   yes   。    
  fullscreen   =   {   yes   |   no   |   1   |   0   }        指定是否以全屏方式显示窗口。默认值为   no   。要小心使用全屏模式,因为这种模式会隐藏浏览器窗口的标题栏和菜单。如果没有在页面内提供关闭窗口的功能,用户可以使用   ALT+F4   快捷键关闭窗口。    
  height   =   number        设置窗口的高度。最小值为   100   。    
  left   =   number        设置窗口左上角相对于桌面的横坐标。单位为像素(   px   )。    
  width   =   number        设置窗口的宽度。最小值为   100   。    
  top   =   number        设置窗口左上角相对于桌面的纵坐标。单位为像素(   px   )。    
  location   =   {   yes   |   no   |   1   |   0   }        设置是否显示浏览器窗口的地址栏。默认值为   yes   。    
  menubar   =   {   yes   |   no   |   1   |   0   }        设置是否显示浏览器窗口的菜单栏。默认值为   yes   。    
  resizable   =   {   yes   |   no   |   1   |   0   }        设置窗口是否允许被用户改变尺寸。默认值为   yes   。    
  scrollbars   =   {   yes   |   no   |   1   |   0   }        设置窗口是否可以具有滚动条。默认值为   yes   。    
  status   =   {   yes   |   no   |   1   |   0   }        设置是否显示浏览器窗口的状态栏。默认值为   yes   。    
  titlebar   =   {   yes   |   no   |   1   |   0   }        设置是否显示浏览器窗口的标题栏。除非调用程序是HTML应用程式(   HTA   )或被信任的对话框,否则此参数将被忽略。默认值为   yes   。    
  toolbar   =   {   yes   |   no   |   1   |   0   }        设置是否显示浏览器窗口的工具条。默认值为   yes   。    
     
  bReplace     :   可选项。布尔值(Boolean)。false   |   true   false     :   新打开的文档覆盖历史列表里的当前文档。    
   
  true     :   文新打开的文档被简单的添加到历史列表的最后。    
     
   
  返回值:  
  oNewWindow     :   对象(Element)。返回对新的   window   对象的引用。    
_______________________________________________________________________________________

 

当弹出子窗口使用的是 window.open();

方法时可以在子窗口使用:

                             1 . parant.method();

                             2 . opener.method();

两个方法调用父窗口的方法!

 

当弹出窗口使用的是模态窗口 window.showModelDialog();方法时可以在子窗口使用:

1 . var parentObj = window.dialogArguments;
      parentObj.method(); 

方法调用父窗口的方法!

 

建议使用方法时考虑清楚弹出窗口究竟是什么模式的对话框,如果不清楚建议使用:

 

 

try{

         opener.method();//弹出的是普通窗口

}catch(e1){

    try{

           var parentObj = window.dialogArguments;//弹出的是模态窗口
            parentObj.method(); 

     }catch(e2){//有可能父窗口没有这个方法!

 }

 

 

 

 

//=====================================================================

 

子窗口给父窗口传值的时候

 

window.parent.opener.document.getElementById("A431").value= “12312”

 

 

//=====================================================================

 

有时我们需要在新打开的窗口里面编辑信息,等编辑完了,需要将当前窗口关闭并且刷新父窗口,以使修改生效,本文就是介绍用 javascript 来实现"更新记录后关闭子窗口并刷新父窗口".

 

父窗口:

<a href="javascript:void(0)" onclick="window.open('child.html','child','width=400,height=300,left=200,top=200');">打开子窗口</a>

 

子窗口:

<script language="JavaScript" type="text/javascript"> 
<!-- 
         function refreshParent() {     
                window.opener.location.href = window.opener.location.href;    
                  if (window.opener.progressWindow)     {        
                         window.opener.progressWindow.close();     
                  }    
                 window.close(); 
         }
 //--> 
</script>  
<a href="javascript:void(0)" onclick="refreshParent()">刷新父窗口并关闭当前窗口</a>  

 

 

 

分享到:
评论
2 楼 flashdream8 2009-09-01  
最近用到了,方便查看。呵呵
1 楼 qingralf 2009-08-31  
强强。为什么置顶了呢。呵呵

相关推荐

    javascript常用对象梳理

    open方法用于打开一个新的浏览器窗口,并在新窗口中装入一个指定的URL地址 ; open方法在打开一个新的浏览器窗口时,还可以指定窗口的名称(第二个参数); open方法在打开一个新的浏览器窗口时,还可以指定窗口...

    JavaScript父子窗体间的调用方法

    如果要打开一个新窗口,使用 window.open( ) 方法。 如果要关闭自身窗口,使用 window.close( ) 方法。 一、父窗体 为了便于父窗口操作子窗口,可以为 window.open( ) 方法定义一个变量,例如: var opW = window....

    JavaScript中的子窗口与父窗口的互相调用问题

    注意:要用open打开才行,如果用openModal打开则会访问不到opener. open的参数: ... ‘newwindow’ 弹出的新窗口的名字,非必须,可用空”代替;  height=100 高度; width=400 宽度; top=0 窗口距离屏幕

    C#浏览器编程,学习使用

    3) 例如,当用户用鼠标点击一个超链的起点时,控制程序就调用一个客户从所需文档所在的远地服务器上取回该文档,并调用解释程序向用户显示该文档 4) HTML 解释程序是必不可少的,而其他的解释程序则是可选的。 5) ...

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    所以我们相信,XML做为一种先进的数据处理方法,将使网络跨越到一个新的境界。 六. XML的严格格式 吸取HTML松散格式带来的经验教训,XML一开始就坚持实行"良好的格式"。 我们先看HTML的一些语句,这些语句在HTML中...

    RINGSDK包含界面库和图象库。

    因此一个窗口类的父窗口对象和父窗口可以不同。 创建MDI子窗口: 需要父窗口是MDIFRAME,即定义时:BEGIN_SETUPMAINWINDOW(IS_MDIFRAME) 子窗口是MDIChild:BEGIN_SETUPWINDOW(MDIChild,IS_MDICHILD) 创建:Create...

    Qt Creator 的安装和hello world 程序+其他程序的编写--不是一般的好

    后打开另一个窗口,一个是打开另一个窗口而自身不消失。可以看到他们实现的 方法是不同的。 三、Qt Creator 登录对话框(原创) 实现功能: 在弹出对话框中填写用户名和密码,按下登录按钮,如果用户名和密码均正确...

    API之网络函数---整理网络函数及功能

    SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口 SendMessageCallback 将一条消息发给窗口 SendMessageTimeout 向窗口发送一条消息 SendNotifyMessage 向窗口发送一条消息 3. API之文件处理函数 ...

    JavaScript笔记

    |--1.join()方法--用于把数组中的所有元素放入一个字符串 | eparato表示要使用的分隔符。如果省略该参数,则使用逗号作为分隔符 |--2.toString()方法--可把数组转换为字符串,并返回结果 |--3.concat()方法--...

    LINGO软件的学习

    LINGO是用来求解线性和非线性优化问题的简易工具。LINGO内置了一种建立最优化模型的语言,可以简便地表达大规模问题,利用LINGO高效的求解器可快速求解并分析结果。...一个对象列中至多有一个集名,而属性...

    Linux程序设计 第4版.haozip01

    6.6 子窗口 191 6.7 keypad模式 193 6.8 彩色显示 195 6.9 pad 198 6.10 cd唱片应用程序 200 6.10.1 新cd唱片应用程序的开始部分 200 6.10.2 main函数 202 6.10.3 建立菜单 203 6.10.4 操作数据库文件 204 ...

    Linux程序设计 第4版.haozip02

    6.6 子窗口 191 6.7 keypad模式 193 6.8 彩色显示 195 6.9 pad 198 6.10 cd唱片应用程序 200 6.10.1 新cd唱片应用程序的开始部分 200 6.10.2 main函数 202 6.10.3 建立菜单 203 6.10.4 操作数据库文件 204 ...

    asp.net知识库

    [ASP.NET 2.0]PageParser.GetCompiledPageInstance中存在一个Bug 如何在DotNet 2的登录组件中检索用户的锁定状态及解锁? ASP.NET 2.0, 想说爱你不容易 SqlDataSource WEB控件:当DeleteCommandType= 遭遇 ASP.NET ...

Global site tag (gtag.js) - Google Analytics