zoukankan      html  css  js  c++  java
  • asp.net中窗口相关操作(如何使用javascript) (转)

    这些代码全部写在和页面分离的代码页中,如果要嵌入到*.aspx页面,可能会出现问题.


    1.打开新窗口
      这个简单:Response.Write(@"<script language='javascript'>window.open
               ('url');</script>");
    2.关闭窗口
      //关闭当前窗口,并提示用户时候关闭,yes关闭,no退出
      Response.Write(@"<script language='javascript'>window.close
                    ();</script>");
      //延迟关闭窗口(下面代码表示2秒后关闭,无需确认)
      Response.Write(@"<script language='javascript'>setTimeout('self.close
              ()',2000);</script>");
    3.延迟时间
      这个和上面的没有多少区别.我用到的情况是,在用户操作完毕给出提示,"n秒后,页面转向"之类的只需去掉2重的Self.close()即可
      Response.Write(@"<script language='javascript'>setTimeout 
                   ('',2000);</script>");
    4.弹出提示或警告窗口
      Response.Write(@"<script language='javascript'>alert('添加成功,2秒钟后页面将自动跳');</script>");
    5.刷新其他页面
      这个用到的情况还是不少.比如在B页面对数据更新和修改,另一页面A要保持最新数据给客户,这是就要在对B
      操作完毕的情况下对A进行刷新:
      Response.Write(@"<script lannguage='javascript'>window.opener.
                location.href='./default.aspx'</script>");
    6.页面跳转
      有时候在学要给出提示的情况下进行页面跳转,不能使用Response.Redirect("url");比如,当客户操作完毕,单击按钮提交,弹出提示框(使用上面3和4),如果使用了Response.Redirect("url");
      那么页面将不给出提示,页就是3和4没有起作用就直接转向了.
      如果你是下面的操作过程:
      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'>");
      //这个我不知道用javascript怎么实现,熟悉的轻补充一下
    7.窗口传制问题
      这个问题比较烦,打开模态窗口(ShowModelDialog)我还没有实现,请各位补充.
      具体情况是这样的,比如说A打开一个新窗口B,当用户对B操作完毕后,我们获得必要的数据,自动将其赋给A中的TextBox等控件,这个过程是在客户端完成的.就像发送邮件时,需要从地址本中选取,然后将选中的发送地址传回来.
      1).在A中加入如下代码,打开一个新窗口B.
         Response.Write(@"<script>window.open('B.aspx.html','','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服务控件,其id为TextBox1,A页面被服务器解析为html,通过浏览器浏览,TextBox1就变成了纯html控件,我们这里用javascript操作的也就是html控件,因此赋值使用的是TextBox1的value属性而不是Text属性.另外,web服务器控件的id被解析成html后,id有时会变,我们只要注意使用服务器解析后的id就成了,在浏览器中右键->查看源文件即可得到


      对第七种操作情况最好使用打开模态窗口windows.ShowModelDialog(),但是比较麻烦,哦还没有实现.

    附:ShowModelDialog问题在这里有说明,请各位解决一下:
       http://www.csdn.net/Expert/TopicView1.asp?id=903438
  • 相关阅读:
    Javascript绝句欣赏
    【转载】浏览器的工作原理:新式网络浏览器幕后揭秘
    从零开始编写自己的JavaScript框架(二)
    从零开始编写自己的JavaScript框架(一)
    CSS 编码中超级有用的工具集合
    创建简单的响应式HTML5模版
    Javascript中的垃圾回收机制
    JavaScript继承详解(五)
    线上应用接入sentinel的第一个流控规则
    sentinel控制台监控数据持久化【MySQL】
  • 原文地址:https://www.cnblogs.com/weiyuxinghuacun/p/660675.html
Copyright © 2011-2022 走看看