使用Page.ClientScript.RegisterClientScriptBlock
2009-07-29 00:44
381 查看
19.10.1 使用Page.ClientScript.RegisterClientScriptBlock
http://book.51cto.com 2009-07-01 09:08 张敏/丁峰译 清华大学出版社 我要评论(0)摘要:《Visual Basic 2008高级编程(第5版)》第19章使用ASP.NET 3.5,本章介绍许多基础知识,讨论与整个ASP.NET应用程序相关的问题以及建立、部署这些新应用程序的选项。本节为大家介绍使用Page.ClientScript.RegisterClientScriptBlock。
19.10.1 使用Page.ClientScript.RegisterClientScriptBlock
RegisterClientScriptBlock方法可以把一个JavaScript函数放在页面的顶部。这说明,该脚本用于启动浏览器中的页面。它的用法如下所示:
<%@ Page Language="VB" %> <script runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As_ System.EventArgs) Dim myScript As String = "function AlertHello() { alert('Hello_ ASP.NET'); }" Page.ClientScript.RegisterClientScriptBlock(Me.GetType(),_ "MyScript",myScript, True) End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Adding JavaScript</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Button ID="Button1" Runat="server" Text="Button" OnClientClick="AlertHello()" /> </div> </form> </body> </html>
这里把JavaScript函数AlertHello创建为一个字符串myScript。接着使用Page.Client Script.Register ClientScriptBlock方法,将脚本放在页面中。RegisterClientScriptBlock方法的两个结构如下:
RegisterClientScriptBlock(type, key, script)
RegisterClientScriptBlock(type, key, script, script tag specification)
上面的示例指定了类型Me.GetType、键、要包含的脚本,接着是一个设置为True的布尔值,所以.NET会自动用<script>标记把脚本放在ASP.NET页面上。运行该页面时,可以查看页面的源代码,如下所示:
<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>
从这段代码中可以看出,指定的脚本放在ASP.NET页面的页面代码之前。不仅包含<script>标记,还在脚本的外部添加了相应的注释标记(所以旧浏览器不会崩溃)。
相关文章推荐
- 使用较大的 JavaScript 函数(3)---Page.ClientScript.RegisterStartupScript 与 Page.ClientScript.RegisterClientScriptBlock 之间的区别
- 使用Page.ClientScript.RegisterClientScriptBlock出现缺失")"解决办法
- this.Page.ClientScript.RegisterClientScriptBlock 使用时失效的原因
- Response.Write()、Page.RegisterClientScriptBlock()、Page.RegisterStartupScript 的区别
- Page.ClientScript.RegisterClientScriptBlock和Page.ClientScript.RegisterStartupScript区别
- ASP.NET AJAX 's UpdatePanel 中使用Page.ClientScript.RegisterStartupScript 失败
- Page.RegisterClientScriptBlock和Page.RegisterStartupScript有何区别?
- Page.ClientScript.RegisterStartupScript 与 RegisterClientScriptBlock 之间的区别
- 用Page.ClientScript.RegisterClientScriptBlock 和Page.ClientScript.RegisterStartupScript:区别:
- Page类中 RegisterStartupScript与RegisterClientScriptBlock的区别
- About Page.ClientScript.RegisterClientScriptBlock
- Response.Write,Page.RegisterClientScriptBlock和Page.RegisterStartupScript的区别
- Page.ClientScript.RegisterStartupScript()封装成类供方便使用
- Page.ClientScript.RegisterClientScriptBlock 与RegisterClientScriptBlock
- RegisterClientScriptBlock的使用 .
- Page.ClientScript.RegisterStartupScript 与 Page.ClientScript.RegisterClientScriptBlock 之间的区别
- ajax下 RegisterClientScriptBlock使用
- Page.ClientScript.RegisterStartupScript 与 Page.ClientScript.RegisterClientScriptBlock 之间的区别
- 关于在.net1.1中使用RegisterClientScriptBlock()注册脚本的显示顺序的BUG