关闭

ASP.NET 2.0中客户端脚本总结

562人阅读 评论(0) 收藏 举报
 

ASP.NET2.0客户端脚本使用的总结,如果总结的不够好或者其他原因请不吝请教.

1.使用OnClientClick属性打开客户端脚本,使用方法如下:

 js脚本:   

<script language="javascript" type="text/javascript">
    <!--
     function opensite()
     {
       window.open("http://www.csdn.net");
       return true;
     }
   
    //-->
    </script>

调用方法:

    <asp:Button ID="Button1" OnClientClick="opensite()" runat="server" Text="打开站点" />

2.动态注册js脚本,下面介绍一下以下四个方法的含义与使用:

       以下几种方法都是派生自ClientScriptManager类,研究一下里面有几十个方法,而且有些重载了.我拿最常用的方法讲一下.

      1) RegisterClientScriptBlock方法:将js区块添加到页面顶端,你可以以字符串形式创建这些js代码,然后将它传递给添加网页的方法。其对应的包含方法IsClientScriptBlockRegistered()

           使用方法如下:

          //动态创建js文件
        string info = "";
        info += "function showName(UserName)";
        info += "{alert('你的名字是:'+UserName);}";

        // 判断myName是否已经被注册
        if (!Page.ClientScript.IsClientScriptBlockRegistered(this.GetType(), "myName"))
        {
          //动态注册js
            Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "myName", info, true);
       
        }

        注意:可以查看一下生成页面的代码究竟怎样的?

      2)RegisterClientScriptInclude方法:通过外部添加引用js脚本。其对应的包含方法IsClientScriptIncludeRegistered()

         假如有一段这样的info.js脚本,如下所示:

                 function  showCity(City){

                     alert"'我爱我的:"+City);

                          }

       引用它的例子,如下:

         //动态注册info.js的javascript文件
        //判断是否已被注册
        if (!ClientScript.IsClientScriptIncludeRegistered(this.GetType(), "myMessage"))
        {

            //若没有被注册,刚将Info.js动态注册
            Page.ClientScript.RegisterClientScriptInclude("myMessage", "js/info.js");
               
         
        }

      注意一下每一个方法的参数就可以了。

  3)RegisterStartupScript方法:将js区块添加当网页完成加载,但是在引发网页的onload事件之前,就会执行。其对应的包含方法IsStartupScriptRegistered。

         使用它的例子如下:

        string info = "<script language=/"javascript/">alert(/"Hello  DotNet!/")</script>";
        if (!Page.ClientScript.IsStartupScriptRegistered("welcome"))
        {
            Page.ClientScript.RegisterStartupScript(this.GetType(), "welcome", info);
       
        }

 4)RegisterOnSubmitStatement方法:添加执行以响应网页onsubmit事件的js。其对应的包含方法IsOnSubmitStatementRegistered。

             使用它的例子如下:

        string info = "return confirm('你确认删除?');";
        if (!Page.ClientScript.IsOnSubmitStatementRegistered(this.GetType(), "myPage"))
        {
            Page.ClientScript.RegisterOnSubmitStatement(this.GetType(), "myPage", info);   

        }   

      注意一下这里不用另外加<script>标签,因为系统已经帮你生成好了。

以上方法至于怎样用,由个人喜好与习惯而定。希望对各位有帮助。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5106次
    • 积分:99
    • 等级:
    • 排名:千里之外
    • 原创:5篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档