人生是一场不能存盘的RPG,我只能尽量多搞几个Screenshot

November 11, 2006

RegisterClientScriptBlock and RegisterStartupScript

Filed under: ASP.NET

这两个函数在asp.net1.1中是Page class上的方法.
在asp.net2.0中,变成了ClientScriptManager class上的方法,一般用法是在Page Load事件中调用:
this.ClientScript.RegisterClientScriptBlock
this.ClientScript.RegisterStartupScript

与此配套的函数还有
IsClientScriptBlockRegistered
IsStartupScriptRegistered
设想你写了一个web control, 需要一段client javaScript,如果user 在一个form上创建了这个control
多次,如果没有这个判断,就会生成多份代码.但在page上只注册一段代码可以不调用这个方法,
使用相同的type和key注册代码会被忽略.

这两个方法唯一的不同在于
RegisterClientScriptBlock()在Web 窗体的开始处,<form runat=”server”>之后生成代码,
而RegisterStartupScript()在 Web 窗体的结尾处,</form>标识之前生成代码。
从名称上看,asp.net 希望RegisterStartupScript生成的代码用于在page刚刚完成加载,OnLoad 事件
尚未触发前执行.

–参考
从 ASP.NET 服务器控件插入客户端脚本
http://www.microsoft.com/china/MSDN/library/archives/library/DNAspp/html/aspnet-injectclientsidesc.asp#aspnet-injectclientsidesc_topic3

Adding Client-Side Message Boxes in your ASP.NET Web
http://aspnet.4guysfromrolla.com/articles/021104-1.2.aspx

Comments »

The URI to TrackBack this entry is: http://recordsome.blogsome.com/2006/11/11/registerclientscriptblock-and-registerstartupscript/trackback/

No comments yet.

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>



Anti-spam measure: please retype the above text into the box provided.






















Get free blog up and running in minutes with Blogsome
Theme designed by Hadley Wickham