Page.RegisterStartupScript(String, String) Methode

Definition

Achtung

The recommended alternative is ClientScript.RegisterStartupScript(Type type, string key, string script). http://go.microsoft.com/fwlink/?linkid=14202

Gibt in der Seitenantwort einen clientseitigen Skriptblock aus.

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

Parameter

key
String

Eindeutiger Schlüssel, der einen Skriptblock bezeichnet.

script
String

Inhalt des Skripts, das an den Client gesendet wird.

Attribute

Beispiele

Im folgenden Codebeispiel wird die Verwendung der RegisterStartupScript -Methode in Verbindung mit der IsStartupScriptRegistered -Methode veranschaulicht. Wenn das im Codedeklarationsblock geschriebene ECMAScript noch nicht registriert wurde, wie von der IsStartupScriptRegistered -Methode bestimmt, wird ein RegisterStartupScript Aufruf ausgeführt.

<%@ 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>

Hinweise

Ähnlich wie bei der RegisterClientScriptBlock -Methode gibt die RegisterStartupScript -Methode das Skript direkt vor dem schließenden Tag des -Elements des Page<form runat= server> Objekts aus. Stellen Sie sicher, dass Sie öffnende und schließende <script> Elemente um die im script Parameter angegebene Skriptblockzeichenfolge einschließen.

Da diese Methode einen Schlüssel zum Identifizieren des Skriptblocks verwendet, muss der Skriptblock nicht jedes Mal an den Ausgabedatenstrom ausgegeben werden, wenn er von einer anderen Serversteuerungsinstanz angefordert wird.

Alle Skriptblöcke mit denselben key Parameterwerten werden als Duplikate betrachtet.

Hinweis

Denken Sie daran, HTML-Kommentartags um Ihr Skript einzuschließen, damit es nicht gerendert wird, wenn der anfordernde Browser keine Skripts unterstützt.

Die RegisterStartupScript-Methode ist veraltet. Verwenden Sie stattdessen die RegisterStartupScript-Methode in der ClientScriptManager-Klasse.

Gilt für:

Weitere Informationen