Page.RegisterClientScriptBlock(String, String) Methode

Definitie

Let op

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

Verzendt scriptblokken aan de clientzijde naar het antwoord.

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

Parameters

key
String

Unieke sleutel die een scriptblok identificeert.

script
String

Inhoud van het script dat naar de client wordt verzonden.

Kenmerken

Voorbeelden

In het volgende codevoorbeeld ziet u het gebruik van de RegisterClientScriptBlock methode in combinatie met de IsClientScriptBlockRegistered methode. Als het ECMAScript in het codedeclaratieblok nog niet is geregistreerd, zoals bepaald door IsClientScriptBlockRegistered, wordt de RegisterClientScriptBlock aanroep uitgevoerd.

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

Opmerkingen

Het script aan de clientzijde wordt net na het openen van de tag van het Page objectelement <form runat= server> verzonden. Vergeet niet om elementen te openen en te sluiten <script> rond de scriptbloktekenreeks die is opgegeven in de script parameter.

Omdat deze methode een sleutel gebruikt om het scriptblok te identificeren, hoeft het scriptblok niet telkens wanneer het wordt aangevraagd door een ander serverbeheerexemplaren, naar de uitvoerstroom te worden verzonden. Het gebruik van een sleutel vermindert ook de kans dat scriptblokken van verschillende besturingselementen elkaar verstoren.

Scriptblokken met dezelfde key parameterwaarden worden beschouwd als duplicaten.

Note

Vergeet niet om HTML-opmerkingstags toe te voegen aan uw script, zodat het niet wordt weergegeven als de aanvragende browser geen scripts ondersteunt.

De RegisterClientScriptBlock methode is afgeschaft. Gebruik in plaats daarvan de RegisterClientScriptBlock methode in de ClientScriptManager klasse.

Van toepassing op