メモ

ASP.NET 1.x のソース

        string clientScript = "<script language='JavaScript'> alert('クライアント') <" + "/script>";

        string startupScript = "<script language='JavaScript'> alert('スタートアップ') <" + "/script>";

       

        RegisterClientScriptBlock("client", clientScript);

        RegisterStartupScript("startup", startupScript);

このソースをASP.NET 2.0でコンパイルすると、

警告 1 'System.Web.UI.Page.RegisterClientScriptBlock(string, string)' は古い形式です:
'The recommended alternative is ClientScript.RegisterClientScriptBlock(Type type, string key, string script).
http://go.microsoft.com/fwlink/?linkid=14202' 

という感じでエラーがでますが、結局、どのように修正していいかわからないので、
こんな感じです。というメモ。
そもそも、引数がかわっているので、ヤヤコシス。


ASP.NET 2.0 のソース

        // Define the name and type of the client scripts on the page.

        String csname1 = "PopupScript";

        String csname2 = "ButtonClickScript";

        Type cstype = this.GetType();

 

        // Get a ClientScriptManager reference from the Page class.

        ClientScriptManager cs = Page.ClientScript;

 

        // Check to see if the startup script is already registered.

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

        {

            String cstext1 = "alert('Hello World');";

            cs.RegisterStartupScript(cstype, csname1, cstext1, true);

        }

 

        // Check to see if the client script is already registered.

        if (!cs.IsClientScriptBlockRegistered(cstype, csname2))

        {

            StringBuilder cstext2 = new StringBuilder();

            cstext2.Append("<script type=text/javascript> function DoClick() {");

            cstext2.Append("Form1.Message.value='Text from client script.'} </");

            cstext2.Append("script>");

            cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), false);

        }

 

MSDN ヘルプは以下を参照

http://msdn2.microsoft.com/ja-jp/library/z9h4dk8y(d=ide).aspx