ClientScriptManager.RegisterStartupScript Methode

Definition

Registriert das Startskript für das Page-Objekt.Registers the startup script with the Page object.

Überlädt

RegisterStartupScript(Type, String, String)

Registriert unter Verwendung eines Typs, eines Schlüssels und eines Skriptliterals das Startskript für das Page-Objekt.Registers the startup script with the Page object using a type, a key, and a script literal.

RegisterStartupScript(Type, String, String, Boolean)

Registriert unter Verwendung eines Typs, eines Schlüssels, eines Skriptliterals sowie eines booleschen Werts, der angibt, ob Skripttags hinzugefügt werden sollen, das Startskript für das Page-Objekt.Registers the startup script with the Page object using a type, a key, a script literal, and a Boolean value indicating whether to add script tags.

RegisterStartupScript(Type, String, String)

Registriert unter Verwendung eines Typs, eines Schlüssels und eines Skriptliterals das Startskript für das Page-Objekt.Registers the startup script with the Page object using a type, a key, and a script literal.

public:
 void RegisterStartupScript(Type ^ type, System::String ^ key, System::String ^ script);
public void RegisterStartupScript (Type type, string key, string script);
member this.RegisterStartupScript : Type * string * string -> unit

Parameter

type
Type

Der Typ des zu registrierenden Startskripts.The type of the startup script to register.

key
String

Der Schlüssel des zu registrierenden Startskripts.The key of the startup script to register.

script
String

Das zu registrierende Startskriptliteral.The startup script literal to register.

Beispiele

Im folgenden Codebeispiel wird die Verwendung RegisterStartupScript der-Methode veranschaulicht.The following code example demonstrates the use of the RegisterStartupScript method. Beachten Sie, dass die Tags für das Start-und Schließ script Ende Skript im-Parameter enthalten sind.Note that the beginning and closing script tags are included within the script parameter. Informationen dazu, wie die Skript Tags auf Grundlage einer zusätzlichen Parametereinstellung hinzugefügt RegisterStartupScript werden, finden Sie unter der-Methode.To have the script tags added based on an additional parameter setting, see the RegisterStartupScript method.

<%@ 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)
  {
    // Define the name and type of the client scripts on the page.
    String csname1 = "PopupScript";
    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))
    {
        StringBuilder cstext1 = new StringBuilder();
        cstext1.Append("<script type=text/javascript> alert('Hello World!') </");
        cstext1.Append("script>");

        cs.RegisterStartupScript(cstype, csname1, cstext1.ToString());
    }
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>RegisterStartupScript</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </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">
    Public Sub Page_Load(ByVal sender As [Object], ByVal e As EventArgs)
        ' Define the name and type of the client scripts on the page. 
        Dim csname1 As [String] = "PopupScript"
        Dim cstype As Type = Me.[GetType]()
    
        ' Get a ClientScriptManager reference from the Page class. 
        Dim cs As ClientScriptManager = Page.ClientScript
    
        ' Check to see if the startup script is already registered. 
        If Not cs.IsStartupScriptRegistered(cstype, csname1) Then
            Dim cstext1 As New StringBuilder()
            cstext1.Append("<script type=text/javascript> alert('Hello World!') </")
            cstext1.Append("script>")
        
            cs.RegisterStartupScript(cstype, csname1, cstext1.ToString())
        End If
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>RegisterStartupScript</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>

Hinweise

Ein Client Skript wird durch seinen Schlüssel und dessen Typ eindeutig identifiziert.A client script is uniquely identified by its key and its type. Skripts mit demselben Schlüssel und Typ werden als Duplikate angesehen.Scripts with the same key and type are considered duplicates. Bei der Seite kann nur ein Skript mit einem bestimmten Typ und Schlüsselpaar registriert werden.Only one script with a given type and key pair can be registered with the page. Wenn Sie versuchen, ein Skript zu registrieren, das bereits registriert ist, wird kein Duplikat des Skripts erstellt.Attempting to register a script that is already registered does not create a duplicate of the script.

Ruft die IsStartupScriptRegistered -Methode auf, um zu bestimmen, ob ein Startskript mit einem angegebenen Schlüssel-und typpaar bereits registriert ist, und vermeidet unnötige Versuche, das Skript hinzuzufügen.Call the IsStartupScriptRegistered method to determine whether a startup script with a given key and type pair is already registered and avoid unnecessarily attempting to add the script.

In dieser Überladung der RegisterStartupScript -Methode müssen Sie sicherstellen, dass das script im-Parameter bereitgestellte Skript mit einem <script> -Element Block umschließt.In this overload of the RegisterStartupScript method, you must make sure that the script provided in the script parameter is wrapped with a <script> element block.

Der von der RegisterStartupScript -Methode hinzugefügte Skriptblock wird ausgeführt, wenn die Seite geladen wird OnLoad , aber bevor das-Ereignis der Seite ausgelöst wird.The script block added by the RegisterStartupScript method executes when the page finishes loading but before the page's OnLoad event is raised. Es ist nicht garantiert, dass die Skriptblöcke in der Reihenfolge ausgegeben werden, in der Sie registriert sind.The script blocks are not guaranteed to be output in the order they are registered. Wenn die Reihenfolge der Skriptblöcke wichtig ist, verwenden Sie StringBuilder ein-Objekt, um die Skripts in einer einzelnen Zeichenfolge zusammenzufassen, und registrieren Sie Sie dann alle in einem einzelnen Client Skriptblock.If the order of the script blocks is important, use a StringBuilder object to gather the scripts together in a single string, and then register them all in a single client script block.

Siehe auch

RegisterStartupScript(Type, String, String, Boolean)

Registriert unter Verwendung eines Typs, eines Schlüssels, eines Skriptliterals sowie eines booleschen Werts, der angibt, ob Skripttags hinzugefügt werden sollen, das Startskript für das Page-Objekt.Registers the startup script with the Page object using a type, a key, a script literal, and a Boolean value indicating whether to add script tags.

public:
 void RegisterStartupScript(Type ^ type, System::String ^ key, System::String ^ script, bool addScriptTags);
public void RegisterStartupScript (Type type, string key, string script, bool addScriptTags);
member this.RegisterStartupScript : Type * string * string * bool -> unit

Parameter

type
Type

Der Typ des zu registrierenden Startskripts.The type of the startup script to register.

key
String

Der Schlüssel des zu registrierenden Startskripts.The key of the startup script to register.

script
String

Das zu registrierende Startskriptliteral.The startup script literal to register.

addScriptTags
Boolean

Ein boolescher Wert, der angibt, ob Skripttags hinzugefügt werden sollen.A Boolean value indicating whether to add script tags.

Ausnahmen

type ist null.type is null.

Beispiele

Im folgenden Codebeispiel wird die Verwendung RegisterStartupScript der-Methode veranschaulicht.The following code example demonstrates the use of the RegisterStartupScript method. Beachten Sie, addScriptTags dass der-Parameter false auf festgelegt ist, sodass die Start-und Schließ script enden Skript Tags im-Parameter enthalten sind.Note that the addScriptTags parameter is set to false so the beginning and closing script tags are included with the script parameter.

<%@ 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)
  {
    // 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);
    }
  }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager 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 System.EventArgs)

    ' Define the name and type of the client scripts on the page.
    Dim csname1 As String = "PopupScript"
    Dim csname2 As String = "ButtonClickScript"
    Dim cstype As Type = Me.GetType()
    
    ' Get a ClientScriptManager reference from the Page class.
    Dim cs As ClientScriptManager = Page.ClientScript

    ' Check to see if the startup script is already registered.
    If (Not cs.IsStartupScriptRegistered(cstype, csname1)) Then
      
      Dim cstext1 As String = "alert('Hello World');"
      cs.RegisterStartupScript(cstype, csname1, cstext1, True)
      
    End If
    
    ' Check to see if the client script is already registered.
    If (Not cs.IsClientScriptBlockRegistered(cstype, 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>")
      cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), False)
      
    End If
    
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager 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

Ein Startskript wird durch seinen Schlüssel und dessen Typ eindeutig identifiziert.A startup script is uniquely identified by its key and its type. Skripts mit demselben Schlüssel und Typ werden als Duplikate angesehen.Scripts with the same key and type are considered duplicates. Bei der Seite kann nur ein Skript mit einem bestimmten Typ und Schlüsselpaar registriert werden.Only one script with a given type and key pair can be registered with the page. Wenn Sie versuchen, ein Skript zu registrieren, das bereits registriert ist, wird kein Duplikat des Skripts erstellt.Attempting to register a script that is already registered does not create a duplicate of the script.

Ruft die IsStartupScriptRegistered -Methode auf, um zu bestimmen, ob ein Startskript mit einem angegebenen Schlüssel-und typpaar bereits registriert ist, und vermeidet unnötige Versuche, das Skript hinzuzufügen.Call the IsStartupScriptRegistered method to determine whether a startup script with a given key and type pair is already registered and avoid unnecessarily attempting to add the script.

In dieser Überladung der RegisterStartupScript -Methode können Sie angeben, ob das script im-Parameter angegebene Skript mithilfe des addScriptTags - <script> Parameters mit einem-Element Block umschließt wird.In this overload of the RegisterStartupScript method, you can indicate whether the script provided in the script parameter is wrapped with a <script> element block by using the addScriptTags parameter. Durch addScriptTags festlegen true von auf wird angegeben, dass Skript Tags automatisch hinzugefügt werden.Setting addScriptTags to true indicates that script tags will be added automatically.

Der von der RegisterStartupScript -Methode hinzugefügte Skriptblock wird ausgeführt, wenn die Seite geladen wird OnLoad , aber bevor das-Ereignis der Seite ausgelöst wird.The script block added by the RegisterStartupScript method executes when the page finishes loading but before the page's OnLoad event is raised. Es ist nicht garantiert, dass die Skriptblöcke in der Reihenfolge ausgegeben werden, in der Sie registriert sind.The script blocks are not guaranteed to be output in the order they are registered. Wenn die Reihenfolge der Skriptblöcke wichtig ist, verwenden Sie StringBuilder ein-Objekt, um die Skripts in einer einzelnen Zeichenfolge zusammenzufassen, und registrieren Sie Sie dann alle in einem einzelnen Client Skriptblock.If the order of the script blocks is important, use a StringBuilder object to gather the scripts together in a single string, and then register them all in a single client script block.

Siehe auch

Gilt für: