asp.net窗体操作总结

这些代码全部写在和页面分离的代码页中(codebehind),如果要嵌入到*.aspx页面,可能
会出现问题
.
1.
打开新窗口

 
这个简单
:Response.Write(@"<script
    language='javascript'>window.open('url');</script>");

2.调整本窗口大小和位置
Response.Write("<script>window.resizeTo(500,400);</script>");
Response.Write("<script>window.moveTo(300,200);</script>");

3.关闭窗口
  //
关闭当前窗口,并提示用户时候关闭,yes关闭,no退出

  Response.Write(@"<script language='javascript'>window.close();</script>");
  //
延迟关闭窗口(下面代码表示2秒后关闭,无需确认
)
  Response.Write(@"<script
    language='javascript'>setTimeout('self.close()',2000);</script>");
4.
延迟时间

 
这个和上面的没有多少区别.我用到的情况是,在用户操作完毕给出提示,"n秒后,页面

   
转向"之类的只需去掉2重的Self.close()即可

  Response.Write(@"<script
    language='javascript'>setTimeout('',2000);</script>");
5.
弹出提示或警告窗口

  Response.Write(@"<script language='javascript'>alert('
添加成功,2秒钟后页面

   
将自动跳
');</script>");
6.
刷新其他页面

 
这个用到的情况还是不少.比如在B页面对数据更新和修改,另一页面A要保持最新数据

 
给客户,这是就要在对B操作完毕的情况下对A进行刷新
:
  Response.Write(@"<script language='javascript'>window.opener.location.
    href='./default.aspx'</script>") ;
7.
页面跳转

 
有时候在需要给出提示的情况下进行页面跳转,不能使用
Response.Redirect("url");
 
比如,当客户操作完毕,单击按钮提交,弹出提示框(使用上面34),如果使用了

    Response.Redirect("url");
 
那么页面将不给出提示,页就是34没有起作用就直接转向了
.
 
如果你是下面的操作过程
:
  1).Response.Write(@"<script language='javascript'>alert('
添加成功,2秒钟后页

   
面将自动跳
');</script>");
  2).Response.Write(@"<script
    language='javascript'>setTimeout('',2000);</script>");
  3).
页面转向
:
    Response.Write("<meta http-equiv='refresh'
    content='0;URL=./default.aspx'>");
    8.
窗口传制问题

 
这个问题比较烦,打开模态窗口
(ShowModelDialog)
 
具体情况是这样的,比如说A打开一个新窗口B,当用户对B操作完毕后,我们获得必要的

 
数据,自动将其赋给A中的TextBox等控件,这个过程是在客户端完成的.就像发送邮件时
,
 
需要从地址本中选取,然后将选中的发送地址传回来
.
  1).
A中加入如下代码,打开一个新窗口
B.
     Response.Write(@"<script language='javascript'>window.
        open('B.aspx','','toolbar=no,menubar=no,status=yes,location=no,
        resizable=no,scrollbars=no,width=500,height=350');</script>");
  2).
B操作完毕,获得必要数据tmpStr,然后将其赋值给A中的
TextBox1
     Response.Write(@"<script
        language='javascript'>opener.document.all.TextBox1.value
         ='" +tmpStr+"';</script>");
注意:这个过程是在客户单用javascript完成的,因此我们不能按照服务端的编程习惯

以及不能使用web服务控件的服务端属性进行操作.TextBox1是一个web服务控件
,
idTextBox1,A页面被服务器解析为html,通过浏览器浏览,TextBox1就变成了

html控件,我们这里用javascript操作的也就是html控件,因此赋值使用的是

TextBox1
value属性而不是Text属性.另外,web服务器控件的id被解析成html
,
id
有时会变,我们只要注意使用服务器解析后的id就成了,在浏览器中右键->查看源文件

即可得到 ,对第七种操作情况最好使用打开模态窗口windows.ShowModelDialog()

转载于:https://www.cnblogs.com/hzuIT/articles/473611.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值