zoukankan      html  css  js  c++  java
  • ASP.NET2.0中RegisterClientScriptBlock 怎样用

    用Page.ClientScript.RegisterClientScriptBlockPage.ClientScript.RegisterStartupScript:区别: 

    c#

    <%Page Language=”C#” %>
    <script runat=”server”>
    protected void Page_Load(object sender, EventArgs e)
    {
    string myScript = @”function AlertHello() alert(‘Hello ASP.NET’); }”;
    Page.ClientScript.RegisterClientScriptBlock(
    this.GetType(),
    “MyScript”, myScript, 
    true);
    }

    </script>

    运行结果如下:
    <html xmlns=”http://www.w3.org/1999/xhtml” >
    <head><title>
    Adding JavaScript
    </title></head>
    <body>
    <form method=”post” action=”JavaScriptPage.aspx” id=”form1”>
    <div>
    <input type=”hidden” name=”__VIEWSTATE”
    value=”/wEPDwUKMTY3NzE5MjIyMGRkiyYSRMg+bcXi9DiawYlbxndiTDo=” />
    </div>
    <script type=”text/javascript”>
    <!--
    function AlertHello() alert(‘Hello ASP.NET’); }// -->
    </script>
    <div>
    <input type=”submit” name=”Button1” value=”Button” onclick=”AlertHello();”
    id=”Button1” />
    </div>
    </form>
    </body>
    </html>

    2.使用Page.ClientScript.RegisterStartupScript

    RegisterStartupScript 方法与RegisterClientScriptBlock方法最大的不同是:RegisterStartupScript 把script放置在 ASP.NET page的底部,而RegisterClientScriptBlock把script放置在ASP.NET page的顶部。

    如果你的页面中有如下代码:
    <asp:TextBox ID=”TextBox1” Runat=”server”>Hello ASP.NET</asp:TextBox>

    c#
    protected void Page_Load(object sender, EventArgs e)
    {
    string myScript = @”alert(document.forms[0][‘TextBox1’].value);”;
    Page.ClientScript.RegisterClientScriptBlock(
    this.GetType(),
    “MyScript”, myScript, 
    true);
    }
    此页面运行时会报错,原因是JavaScript function先于text box被安放于浏览器。因此JavaScript function找不到TextBox1。
    c#
    protected void Page_Load(object sender, EventArgs e)
    {
    string myScript = @”alert(document.forms[0][‘TextBox1’].value);”;
    Page.ClientScript.RegisterStartupScript(
    this.GetType(),
    “MyScript”, myScript, 
    true);
    }
    这段代码把JavaScript function放置于ASP.NET page底部,因此JavaScript运行时它能找到TextBox1。

    3.使用Page.ClientScript.RegisterClientScriptInclude
    许多开发者把JavaScript放置在.js文件中,使用RegisterClientScriptInclude方法可以注册.js文件中的JavaScript。
    c#
    string myScript = “myJavaScriptCode.js”
    Page.ClientScript.RegisterClientScriptInclude(“myKey”, myScript);
    这将在ASP.NET页面产生如下结构:
    <script src=”myJavaScriptCode.js” type=”text/javascript”></script>
  • 相关阅读:
    Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(二)之Introduction to Objects
    Thinking in Java,Fourth Edition(Java 编程思想,第四版)学习笔记(一)之Introduction
    JMock2入门
    webWMS开发过程记录(六)- 详细设计之系统管理
    webWMS开发过程记录(五)- 详细设计之系统界面框架设计
    基于gensim深入自然语言处理
    sublime text 搭建anconda的python开发环境遇到问题
    文本分类
    简介:机器学习模型在数学就是解决代价函数的最优化问题
    学习笔记一 线性代数
  • 原文地址:https://www.cnblogs.com/luluping/p/1485894.html
Copyright © 2011-2022 走看看