CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

如何使打开的新页面位于最前面??

楼主zzs2002(@#@)2005-06-03 10:39:02 在 .NET技术 / ASP.NET 提问

我有两个页面,一个是1.aspx,一个是2.aspx  
  现在是1.aspx中有一个LinkButton(DataGrid中的魔板列),点它转向2.aspx   (固定大小的页面),并传递2个值。  
  但是,当我第2次,3次......点LinkButton时,2.aspx中内容是正确的,也就说值传过去了。  
  但是这个2.aspx就跑到1.aspx后面(下面去了)  
   
  现在要求,我无论点击多少次LinkButton,使打开的2.aspx都要位于1.aspx页面的上方。  
   
  我目前的做法:  
  1.aspx下:  
  Response.Write(  
  "<script>window.open('2.aspx?ID="   +   la.Text.Trim()   +"&Title="+lb.Text.Trim()+"','New','width=520,height=400')</script>");      
  请问应该怎么写代码?是否open中有参数可以进行控制?  
  请高手指点 问题点数:20、回复次数:14Top

1 楼YG200233(I love code,I hate code too)回复于 2005-06-03 11:00:02 得分 1

帮你UP。  
  学习。。。。Top

2 楼bl_xin(菠萝)回复于 2005-06-03 11:01:01 得分 1

<script   language=javascript>   window.focus();</script>Top

3 楼CMIC(大象)回复于 2005-06-03 11:05:41 得分 2

Response.Write(  
  "<script>window.open('2.aspx?ID="   +   la.Text.Trim()   +"&Title="+lb.Text.Trim()+"','Top','width=520,height=400')</script>");      
  Top

4 楼zzs2002(@#@)回复于 2005-06-03 11:15:54 得分 0

谢谢楼上,跟我以前一样,好象是第二个参数就是个名字,随便写什么都可以。  
  效果是一样的。  
  也就是,现在无论我点击多少次LinkButton,打开的只是一个2.aspx,但是内容会更改。  
  但是,除了第一次点击   2.aspx会位于1.aspx的前面,以后都跑后头去了。  
  Top

5 楼lei00529(老婆叫我猪)回复于 2005-06-03 11:16:30 得分 3

在打开的页面里  
   
  在最前面:  
  <body       onblur="this.focus();">  
  打开全屏:  
  <script   language="javascript">  
  self.moveTo(0,0)  
    self.resizeTo(screen.availWidth,screen.availHeight)  
  </script>Top

6 楼laihua(背着石头过河)回复于 2005-06-03 11:22:29 得分 1

window.showModalDialog('2.aspx',   '',   'dialogHeight:   500px;   dialogWidth:   500px')  
  用模态窗口,Top

7 楼zzs2002(@#@)回复于 2005-06-03 11:29:31 得分 0

谢谢!  
  <body       onblur="this.focus();">  
  这样的确可以是在最前面了,但是再点击LinkButton时,2.aspx页面内容都不变了啊!Top

8 楼zzs2002(@#@)回复于 2005-06-03 11:36:10 得分 0

window.showModalDialog('2.aspx',   '',   'dialogHeight:   500px;   dialogWidth:   500px')  
  用模态窗口,  
  这样的效果成了:打开新窗口,原来窗口是一片空白。我都没办法测试第二次点击的效果了。Top

9 楼renyu732(Sysinfo)回复于 2005-06-03 11:38:34 得分 3

window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框,由于是对话框,因此它并没有一般用window.open()打开的窗口的所有属性。  
  window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。  
   
  当我们用showModelessDialog()打开窗口时,不必用window.close()去关闭它,当以非模态方式[IE5]打开时,   打开对话框的窗口仍可以进行其他的操作,即对话框不总是最上面的焦点,当打开它的窗口URL改变时,它自动关闭。而模态[IE4]方式的对话框始终有焦点(焦点不可移走,直到它关闭)。模态对话框和打开它的窗口相联系,因此我们打开另外的窗口时,他们的链接关系依然保存,并且隐藏在活动窗口的下面。  
   
  使用方法如下:  
  vReturnValue   =   window.showModalDialog(sURL   [,   vArguments]   [,   sFeatures])  
  vReturnValue   =   window.showModelessDialog(sURL   [,   vArguments]   [,   sFeatures])  
  参数说明:  
  sURL  
  必选参数,类型:字符串。用来指定对话框要显示的文档的URL。  
  vArguments  
  可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。  
  sFeatures  
  可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。  
  dialogHeight   对话框高度,不小于100px,IE4中dialogHeight   和   dialogWidth   默认的单位是em,而IE5中是px,为方便其见,在定义modal方式的对话框时,用px做单位。  
    dialogWidth:   对话框宽度。  
    dialogLeft:   距离桌面左的距离。  
    dialogTop:   离桌面上的距离。  
    center:   {yes   |   no   |   1   |   0   }:窗口是否居中,默认yes,但仍可以指定高度和宽度。  
    help:   {yes   |   no   |   1   |   0   }:是否显示帮助按钮,默认yes。  
    resizable:   {yes   |   no   |   1   |   0   }   [IE5+]:是否可被改变大小。默认no。  
    status:   {yes   |   no   |   1   |   0   }   [IE5+]:是否显示状态栏。默认为yes[   Modeless]或no[Modal]。  
  scroll:{   yes   |   no   |   1   |   0   |   on   |   off   }:指明对话框是否显示滚动条。默认为yes。  
   
  还有几个属性是用在HTA中的,在一般的网页中一般不使用。  
  dialogHide:{   yes   |   no   |   1   |   0   |   on   |   off   }:在打印或者打印预览时对话框是否隐藏。默认为no。  
  edge:{   sunken   |   raised   }:指明对话框的边框样式。默认为raised。  
  unadorned:{   yes   |   no   |   1   |   0   |   on   |   off   }:默认为no。  
   
  传入参数:  
  要想对话框传递参数,是通过vArguments来进行传递的。类型不限制,对于字符串类型,最大为4096个字符。也可以传递对象,例如:  
   
  test1.htm  
  ====================  
  <script>  
  var   mxh1   =   new   Array("mxh","net_lover","孟子E章")  
  var   mxh2   =   window.open("about:blank","window_mxh")  
  //   向对话框传递数组  
  window.showModalDialog("test2.htm",mxh1)  
  //   向对话框传递window对象  
  window.showModalDialog("test3.htm",mxh2)  
  </script>  
   
  test2.htm  
  ====================  
  <script>  
  var   a   =   window.dialogArguments  
  alert("您传递的参数为:"   +   a)  
  </script>  
   
  test3.htm  
  ====================  
  <script>  
  var   a   =   window.dialogArguments  
  alert("您传递的参数为window对象,名称:"   +   a.name)  
  </script>  
   
  可以通过window.returnValue向打开对话框的窗口返回信息,当然也可以是对象。例如:  
   
  test4.htm  
  ===================  
  <script>  
  var   a   =   window.showModalDialog("test5.htm")  
  for(i=0;i<a.length;i++)   alert(a[i])  
  </script>  
   
  test5.htm  
  ===================  
  <script>  
  function   sendTo()  
  {  
  var   a=new   Array("a","b")  
  window.returnValue   =   a  
  window.close()  
  }  
  </script>  
  <body>  
  <form>  
  <input   value="返回"   type=button   onclick="sendTo()">  
  </form>  
   
  常见问题:  
  1,如何在模态对话框中进行提交而不新开窗口?  
  如果你   的   浏览器是IE5.5+,可以在对话框中使用带name属性的iframe,提交时可以制定target为该iframe的name。对于IE4+,你可以用高度    
   
   
  你可用弹出模态窗口来达到目的:  
  先对按钮添加事件  
  this.TextBox1.Attributes.Add("onclick","return(window.showModalDialog('xxx.aspx','newwin','');");  
   
  其次,在xxx.aspx页面中,根据选择的下拉框结果,返回true/false,如此,当返回true时,页面自然就提交了,如果返回false,则页面不提交.  
   
   
   
  Page.RegisterStartupScript("","<script>document.forms(0).TextBox1.value=window.showModalDialog('WebForm1.aspx','','scroll:0;status:0;help:0;resizable:1;dialogWidth:200px;dialogHeight:118px');document.forms(0).Button1.click();</script>");  
  搂主,你要添加一个TextBox1和一个Button1,设置他们的宽度为0px,你返回的值就是TextBox1.Text里面的内容  
  你可以在Button1里面执行你返回值之后的程序!  
  我是在做一个类似购物车的程序里面用道的,很好用的  
  Top

10 楼lei00529(老婆叫我猪)回复于 2005-06-03 11:38:50 得分 0

先关再开!  
   
  父窗口可以关子窗口吧,查一下Top

11 楼renyu732(Sysinfo)回复于 2005-06-03 11:40:57 得分 0

http://dotnet.aspx.cc/ShowDetail.aspx?id=49ML4AO8-5PB3-4KNY-NJZD-LJOIOXV4M1X4Top

12 楼tomorrowstar(以前我看事物是用肉眼去看!)回复于 2005-06-03 11:47:40 得分 6

<body       onload="this.focus();">  
  Top

13 楼moudy(勇士(绝对盗版))回复于 2005-06-03 11:51:10 得分 3

在2.aspx       上面加<body       onload="this.focus();">就可以了。。Top

14 楼zzs2002(@#@)回复于 2005-06-03 12:36:47 得分 0

谢谢!  
  <body       onload="this.focus();">    
  这个可以达到效果,我还以为window.open中可以用参数去控制呢。  
  Top

相关问题

  • 怎样在前面的窗口打开新页面
  • showModalDialog打开页面
  • 打开新页面
  • 我在一页面A.htm 点击一个链接 打开新的页面B.htm,B.htm在A.htm前面 只有B.htm关了 A.htm页面才被激活 怎么实现
  • 菜鸟的问题:要怎么样在本窗口打开一个新页面,但这个页面回退不到前面这个页面?
  • 页面打开的问题
  • 打开页面的问题
  • 打开新页面问题
  • 无法打开jsp页面
  • 紧急措施!!为什么我的处理页面没对前面传来的信息处理啊 ?处理页面打开在IE中是空白的??

关键词

  • 页面
  • 属性
  • 内容
  • 对话框
  • 模态
  • 默认
  • 参数
  • 打开
  • aspx
  • yes

得分解答快速导航

  • 帖主:zzs2002
  • YG200233
  • bl_xin
  • CMIC
  • lei00529
  • laihua
  • renyu732
  • tomorrowstar
  • moudy

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo