Page.RegisterStartupScript(String, String) Page.RegisterStartupScript(String, String) Page.RegisterStartupScript(String, String) Page.RegisterStartupScript(String, String) Method

定義

警告

この API は現在使われていません。

ページ応答で、クライアント側のスクリプト ブロックを出力します。Emits a client-side script block in the page response.

public:
 virtual void RegisterStartupScript(System::String ^ key, System::String ^ script);
[System.Obsolete("The recommended alternative is ClientScript.RegisterStartupScript(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202")]
public virtual void RegisterStartupScript (string key, string script);
abstract member RegisterStartupScript : string * string -> unit
override this.RegisterStartupScript : string * string -> unit
Public Overridable Sub RegisterStartupScript (key As String, script As String)

パラメーター

key
String String String String

スクリプト ブロックを識別する一意のキー。Unique key that identifies a script block.

script
String String String String

クライアントに送られるスクリプトの内容。Content of script that will be sent to the client.

メソッドをRegisterStartupScript IsStartupScriptRegisteredメソッドと組み合わせて使用する方法を次のコード例に示します。The following code example demonstrates the use of the RegisterStartupScript method in conjunction with the IsStartupScriptRegistered method. コード宣言ブロックで記述された ECMAScript が、 IsStartupScriptRegisteredメソッドRegisterStartupScriptによって決定されたとおりに登録されていない場合は、呼び出しが行われます。If the ECMAScript written in the code declaration block has not already been registered, as determined by the IsStartupScriptRegistered method, then a RegisterStartupScript call is made.

<%@ Page Language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  public void Page_Load(Object sender, EventArgs e)
  {
    String csname1 = "PopupScript";
    String csname2 = "ButtonClickScript";

    if (!IsClientScriptBlockRegistered(csname1))
    {
        String cstext1 = "<script type=\"text/javascript\">" +
            "alert('Hello World');</" + "script>";
        RegisterStartupScript(csname1, cstext1);
    }

    if (!IsClientScriptBlockRegistered(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>");
      RegisterClientScriptBlock(csname2, cstext2.ToString());
    }
  }
</script>
<html  >
  <head>
    <title>RegisterClientScriptBlock Example</title>
  </head>
  <body>
     <form id="Form1"
         runat="server">
        <input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
     </form>
  </body>
</html>

<%@ Page Language="VB"  %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
        Dim csname1 As String = "PopupScript"

        Dim csname2 As String = "ButtonClickScript"
    
        If Not IsClientScriptBlockRegistered(csname1) Then
            Dim cstext1 As String = "<script type=""text/javascript"">" & _
                "alert('Hello World');</" & "script>"
            RegisterStartupScript(csname1, cstext1)
        End If
    
        If Not IsClientScriptBlockRegistered(csname2) Then
            Dim cstext2 As New StringBuilder()
            cstext2.Append("<script type=""text/javascript""> function DoClick() {")
            cstext2.Append("Form1.Message.value='Text from client script.'} </")
            cstext2.Append("script>")
            RegisterClientScriptBlock(csname2, cstext2.ToString())
        End If
    End Sub
</script>
<html  >
  <head>
    <title>RegisterClientScriptBlock Example</title>
  </head>
  <body>
     <form id="Form1"
         runat="server">
        <input type="text" id="Message" /> <input type="button" value="ClickMe" onclick="DoClick()" />
     </form>
  </body>
</html>

注釈

メソッドと同様に、メソッドRegisterStartupScriptは、 Pageオブジェクトの<form runat= server>要素の終了タグの直前にスクリプトを出力します。 RegisterClientScriptBlockSimilar to the RegisterClientScriptBlock method, the RegisterStartupScript method emits the script just before the closing tag of the Page object's <form runat= server> element. パラメーターに指定されている<script>スクリプトブロック文字列の前後には、開始要素と終了要素を含めるようにしてください。 scriptBe sure to include opening and closing <script> elements around the script block string specified in the script parameter.

このメソッドは、キーを使用してスクリプトブロックを識別するため、別のサーバーコントロールインスタンスによって要求されるたびに、スクリプトブロックを出力ストリームに出力する必要はありません。Because this method uses a key to identify the script block, the script block does not have to be emitted to the output stream each time it is requested by a different server control instance

同じkeyパラメーター値を持つすべてのスクリプトブロックは、重複していると見なされます。Any script blocks with the same key parameter values are considered duplicates.

注意

要求側のブラウザーでスクリプトがサポートされていない場合は、表示されないように、スクリプトの周囲に HTML コメントタグを含めるようにしてください。Remember to include HTML comment tags around your script so that it will not be rendered if the requesting browser does not support scripts.

RegisterStartupScript メソッドの使用は非推奨とされました。The RegisterStartupScript method has been deprecated. 代わりに RegisterStartupScript クラスの ClientScriptManager メソッドを使用してください。Use the RegisterStartupScript method in the ClientScriptManager class instead.

適用対象

こちらもご覧ください