向 ASP.NET 网页动态添加客户端脚本

ClientScriptManager 类,框架2.0新的机能

用服务器代码可以向页中添加客户端脚本。当客户端脚本的内容依赖于直到运行时才可用的信息时,使用服务器代码创建客户端脚本很有用。当您希望客户端脚本在下列情况下执行时,向页动态添加客户端脚本也很有

ClientScriptManager 类用于管理客户端脚本并将它们添加到 Web 应用程序中。可以从 Page 对象的 ClientScript 属性获取对 ClientScriptManager 类的引用。

通过在网页的 HTML 标记中包含脚本,可以声明方式向网页添加客户端脚本。然而,有些情况下需要动态添加客户端脚本。若要动态添加脚本,根据您想添加脚本的时间及方式,使用 RegisterClientScriptBlock 方法、RegisterClientScriptInclude 方法、RegisterStartupScript 方法或 RegisterOnSubmitStatement 方法(MSDN)

具体操作如下

//javascript文

string csText = "alert('Hello')";

//ClientScriptManager 类用于管理客户端脚本并将它们添加到 Web 应用程序中

ClientScriptManager cs = this.ClientScript;

Type cstype = this.GetType();

if (!cs.IsStartupScriptRegistered(cstype, ""))

{         

   /* type 要注册的启动脚本的类型

    * key 要注册的启动脚本的键

    * script 要注册的启动脚本文本

    * addScriptTags 指示是否添加脚本标记的布尔值

    */

   cs.RegisterStartupScript(cstype, "", csText, true);

}

下面是javascript执行时机的说明

 RegisterClientScriptBlock 向页的顶部添加一个脚本块。以字符串形式创建脚本,然后将其传递给方法,方法再将脚本添加到页中。可以使用此方法将任何脚本插入到页中。请注意,脚本可能在所有元素完成之前呈现到页中;因此,您可能无法从脚本中引用页上的所有元素。

 RegisterClientScriptInclude 与 RegisterClientScriptBlock 方法类似,但此方法将添加引用外部 .js 文件的脚本块。包含文件在任何其他动态添加的脚本之前添加;因此,您可能无法引用页上的某些元素

RegisterStartupScript 向页中添加一个脚本块,该脚本块在页完成加载后引发页的 onload 事件之前执行。该脚本通常不创建为事件处理程序或函数;它通常只包含要执行一次的语句。

 RegisterOnSubmitStatement 添加响应页的 onsubmit 事件而执行的脚本。该脚本在提交页之前执行,允许您取消提交

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值