ClientScriptManager.RegisterStartupScript Metódus

Definíció

Regisztrálja az indítási szkriptet az Page objektummal.

Túlterhelések

Name Description
RegisterStartupScript(Type, String, String)

Az indítási szkriptet egy típus, egy kulcs és egy szkriptkonstans használatával regisztrálja az Page objektummal.

RegisterStartupScript(Type, String, String, Boolean)

Az indítási szkriptet egy típus, egy kulcs, egy szkriptkonstans és egy logikai érték használatával regisztrálja az Page objektummal, amely jelzi, hogy hozzá kell-e adni szkriptcímkéket.

RegisterStartupScript(Type, String, String)

Az indítási szkriptet egy típus, egy kulcs és egy szkriptkonstans használatával regisztrálja az Page objektummal.

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
Public Sub RegisterStartupScript (type As Type, key As String, script As String)

Paraméterek

type
Type

A regisztrálandó indítási szkript típusa.

key
String

A regisztrálandó indítási szkript kulcsa.

script
String

A regisztrálandó indítási szkript literálja.

Példák

Az alábbi példakód a metódus használatát RegisterStartupScript mutatja be. Vegye figyelembe, hogy a paraméter tartalmazza az első és a záró szkriptcímkéket script . Ha további paraméterbeállítás alapján szeretné hozzáadni a szkriptcímkéket, tekintse meg a metódust RegisterStartupScript .

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

Megjegyzések

Az ügyfélszkripteket a kulcs és a típus egyedileg azonosítja. Az azonos kulccsal és típussal rendelkező szkriptek duplikáltnak minősülnek. A lapon csak egy adott típusú és kulcspárt tartalmazó szkript regisztrálható. Ha már regisztrált szkriptet próbál regisztrálni, az nem hozza létre a szkript másolatát.

Hívja meg a IsStartupScriptRegistered metódust annak megállapításához, hogy egy adott kulccsal és típuspárral rendelkező indítási szkript már regisztrálva van-e, és ne próbálja meg szükségtelenül hozzáadni a szkriptet.

A metódus túlterhelése RegisterStartupScript esetén győződjön meg arról, hogy a paraméterben script megadott szkript elemblokkba <script> van csomagolva.

A metódus által RegisterStartupScript hozzáadott szkriptblokk akkor fut, amikor az oldal betöltődik, de az oldal eseményének OnLoad létrehozása előtt. A szkriptblokkok nem garantáltan abban a sorrendben jelennek meg, amelyben regisztrálva vannak. Ha a szkriptblokkok sorrendje fontos, használjon objektumot StringBuilder a szkriptek egyetlen sztringben való összegyűjtéséhez, majd regisztrálja őket egyetlen ügyfélszkriptblokkban.

Lásd még

A következőre érvényes:

RegisterStartupScript(Type, String, String, Boolean)

Az indítási szkriptet egy típus, egy kulcs, egy szkriptkonstans és egy logikai érték használatával regisztrálja az Page objektummal, amely jelzi, hogy hozzá kell-e adni szkriptcímkéket.

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
Public Sub RegisterStartupScript (type As Type, key As String, script As String, addScriptTags As Boolean)

Paraméterek

type
Type

A regisztrálandó indítási szkript típusa.

key
String

A regisztrálandó indítási szkript kulcsa.

script
String

A regisztrálandó indítási szkript literálja.

addScriptTags
Boolean

Logikai érték, amely azt jelzi, hogy szkriptcímkéket szeretne-e hozzáadni.

Kivételek

type az null.

Példák

Az alábbi példakód a metódus használatát RegisterStartupScript mutatja be. Vegye figyelembe, hogy a addScriptTags paraméter úgy van beállítva, hogy false a paraméter tartalmazza script az első és a záró szkriptcímkéket.

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

Megjegyzések

Az indítási szkripteket a kulcs és a típus egyedileg azonosítja. Az azonos kulccsal és típussal rendelkező szkriptek duplikáltnak minősülnek. A lapon csak egy adott típusú és kulcspárt tartalmazó szkript regisztrálható. Ha már regisztrált szkriptet próbál regisztrálni, az nem hozza létre a szkript másolatát.

Hívja meg a IsStartupScriptRegistered metódust annak megállapításához, hogy egy adott kulccsal és típuspárral rendelkező indítási szkript már regisztrálva van-e, és ne próbálja meg szükségtelenül hozzáadni a szkriptet.

A metódus túlterhelése RegisterStartupScript esetén jelezheti, hogy a paraméterben script megadott szkript elemblokkba <script> van-e csomagolva a addScriptTags paraméter használatával. A beállítás addScriptTags azt true jelzi, hogy a szkriptcímkék automatikusan hozzá lesznek adva.

A metódus által RegisterStartupScript hozzáadott szkriptblokk akkor fut, amikor az oldal betöltődik, de az oldal eseményének OnLoad létrehozása előtt. A szkriptblokkok nem garantáltan abban a sorrendben jelennek meg, amelyben regisztrálva vannak. Ha a szkriptblokkok sorrendje fontos, használjon objektumot StringBuilder a szkriptek egyetlen sztringben való összegyűjtéséhez, majd regisztrálja őket egyetlen ügyfélszkriptblokkban.

Lásd még

A következőre érvényes: