ClientScriptManager Klass

Definition

Definierar metoder för att hantera klientskript i webbprogram.

public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
Arv
ClientScriptManager

Exempel

I följande kodexempel visas hur metoden för RegisterClientScriptBlock klassen användsClientScriptManager. Två klientskript definieras på sidan: PopupScript, som visar ett aviseringsmeddelande när sidan läses in och ButtonClickScript, som definierar en klienthanterare för en HTML-knapps onClick händelse.

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

Kommentarer

Klassen ClientScriptManager används för att hantera klientskript och lägga till dem i webbprogram. Du kan hämta en referens till ClientScriptManager klassen från ClientScript objektets Page egenskap.

Du kan lägga till ett klientskript på en webbsida deklarativt genom att inkludera skriptet i HTML-koden på sidan. Det finns dock situationer när du lägger till klientskript dynamiskt. Om du vill lägga till ett skript dynamiskt använder RegisterClientScriptBlock du metoden, RegisterClientScriptInclude metoden, RegisterStartupScript metoden eller RegisterOnSubmitStatement metoden, beroende på när och hur du vill lägga till skriptet. Mer information finns i How to: Add Client Script Dynamically to ASP.NET Web Pages.

Klassen ClientScriptManager identifierar skript unikt med en nyckel String och en Type. Skript med samma nyckel och typ betraktas som dubbletter. Genom att använda skripttypen kan du undvika att förvirra liknande skript från olika användarkontroller som kan användas på sidan.

Klassen ClientScriptManager kan användas för att anropa klientåteranrop i situationer där det är önskvärt att köra serverkod från klienten utan att utföra ett återanrop. Detta kallas för att utföra ett out-of-band-återanrop till servern. I ett klientåteranrop skickar en klientskriptfunktion en asynkron begäran till en ASP.NET webbsida. Webbsidan kör en modifierad version av sin normala livscykel för att bearbeta återanropet. GetCallbackEventReference Använd metoden för att hämta en referens till en klientfunktion som när den anropas initierar ett klientåteranrop till en serverhändelse. Mer information finns i Implementera klientåteranrop utan återkopplingar.

Note

Skriptåteranrop fungerar inte i äldre webbläsare som inte stöder dokumentobjektmodellen (DOM) och de kräver att ECMAScript är aktiverat på klienten. Om du vill kontrollera om webbläsaren stöder återanrop använder du egenskapen SupportsCallback, som är tillgänglig via egenskapen Browser för det ASP.NET inbyggda objektet Request.

GetPostBackEventReference Använd metoden och GetPostBackClientHyperlink metoden för att definiera en klientpostback-händelse. Dessa metoder gör det möjligt för klientskriptfunktioner, när de anropas, att få servern att publicera tillbaka till sidan. En klientpostback-händelse skiljer sig från ett klientåteranrop eftersom webbsidan slutför en normal livscykel för att bearbeta klientens postback-händelse.

Note

Om du använder en Button kontroll och UseSubmitBehavior egenskapen är inställd på false, kan du använda GetPostBackEventReference metoden för att returnera klientens postback-händelse för Button kontrollen.

Egenskapen OnClientClick för Button kontrollen, ImageButton kontrollen och LinkButton kontrollen kan användas för att köra klientskriptet.

Metoder

Name Description
Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
GetCallbackEventReference(Control, String, String, String, Boolean)

Hämtar en referens till en klientfunktion som när den anropas initierar ett klientanrop tillbaka till serverhändelser. Klientfunktionen för den här överlagrade metoden innehåller en angiven kontroll, argument, klientskript, kontext och booleskt värde.

GetCallbackEventReference(Control, String, String, String, String, Boolean)

Hämtar en referens till en klientfunktion som när den anropas initierar ett klientanrop tillbaka till serverhändelser. Klientfunktionen för den här överlagrade metoden innehåller en angiven kontroll, argument, klientskript, kontext, felhanterare och booleskt värde.

GetCallbackEventReference(Control, String, String, String)

Hämtar en referens till en klientfunktion som när den anropas initierar ett klientanrop tillbaka till en serverhändelse. Klientfunktionen för den här överlagrade metoden innehåller en angiven kontroll, ett argument, ett klientskript och en kontext.

GetCallbackEventReference(String, String, String, String, String, Boolean)

Hämtar en referens till en klientfunktion som när den anropas initierar ett klientanrop tillbaka till serverhändelser. Klientfunktionen för den här överlagrade metoden innehåller ett angivet mål, argument, klientskript, kontext, felhanterare och booleskt värde.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetPostBackClientHyperlink(Control, String, Boolean)

Hämtar en referens, med javascript: tillagd i början av den, som kan användas i en klienthändelse för att publicera tillbaka till servern för den angivna kontrollen med de angivna händelseargumenten och boolesk indikation om posten ska registreras för händelseverifiering.

GetPostBackClientHyperlink(Control, String)

Hämtar en referens, med javascript: tillagd i början av den, som kan användas i en klienthändelse för att publicera tillbaka till servern för den angivna kontrollen och med de angivna händelseargumenten.

GetPostBackEventReference(Control, String, Boolean)

Returnerar en sträng som ska användas i en klienthändelse för att orsaka efteråterställning till servern. Referenssträngen definieras av den angivna kontrollen som hanterar postback och ett strängargument med ytterligare händelseinformation. Du kan också registrera händelsereferensen för validering.

GetPostBackEventReference(Control, String)

Returnerar en sträng som kan användas i en klienthändelse för att orsaka återställning till servern. Referenssträngen definieras av den angivna kontrollen som hanterar postback och ett strängargument med ytterligare händelseinformation.

GetPostBackEventReference(PostBackOptions, Boolean)

Returnerar en sträng som kan användas i en klienthändelse för att orsaka återställning till servern. Referenssträngen definieras av det angivna PostBackOptions objektet. Du kan också registrera händelsereferensen för validering.

GetPostBackEventReference(PostBackOptions)

Returnerar en sträng som kan användas i en klienthändelse för att orsaka återställning till servern. Referenssträngen definieras av den angivna PostBackOptions instansen.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
GetWebResourceUrl(Type, String)

Hämtar en URL-referens till en resurs i en sammansättning.

IsClientScriptBlockRegistered(String)

Avgör om klientskriptblocket är registrerat med objektet med Page den angivna nyckeln.

IsClientScriptBlockRegistered(Type, String)

Avgör om klientskriptblocket är registrerat med objektet med Page hjälp av en nyckel och typ.

IsClientScriptIncludeRegistered(String)

Avgör om klientskriptet är registrerat med objektet med Page den angivna nyckeln.

IsClientScriptIncludeRegistered(Type, String)

Avgör om klientskriptet är registrerat med objektet med Page hjälp av en nyckel och typ.

IsOnSubmitStatementRegistered(String)

Avgör om OnSubmit-instruktionen Page är registrerad med objektet med den angivna nyckeln.

IsOnSubmitStatementRegistered(Type, String)

Avgör om OnSubmit-instruktionen Page är registrerad med objektet med den angivna nyckeln och typen.

IsStartupScriptRegistered(String)

Avgör om startskriptet är registrerat med objektet med Page den angivna nyckeln.

IsStartupScriptRegistered(Type, String)

Avgör om startskriptet är registrerat med objektet med Page den angivna nyckeln och typen.

MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
RegisterArrayDeclaration(String, String)

Registrerar en JavaScript-matrisdeklaration med objektet med Page hjälp av ett matrisnamn och matrisvärde.

RegisterClientScriptBlock(Type, String, String, Boolean)

Registrerar klientskriptet med objektet med Page hjälp av ett typ-, nyckel-, skriptliteral- och booleskt värde som anger om skripttaggar ska läggas till.

RegisterClientScriptBlock(Type, String, String)

Registrerar klientskriptet med objektet med Page hjälp av en typ, nyckel och skriptliteral.

RegisterClientScriptInclude(String, String)

Registrerar klientskriptet med objektet med Page hjälp av en nyckel och en URL, vilket gör att skriptet kan anropas från klienten.

RegisterClientScriptInclude(Type, String, String)

Registrerar klientskriptet med objektet med Page hjälp av en typ, en nyckel och en URL.

RegisterClientScriptResource(Type, String)

Registrerar klientskriptresursen Page med objektet med hjälp av en typ och ett resursnamn.

RegisterExpandoAttribute(String, String, String, Boolean)

Registrerar ett namn/värde-par som ett anpassat attribut (expando) för den angivna kontrollen med ett kontroll-ID, ett attributnamn, ett attributvärde och ett booleskt värde som anger om attributvärdet ska kodas.

RegisterExpandoAttribute(String, String, String)

Registrerar ett namn/värde-par som ett anpassat attribut (expando) för den angivna kontrollen med ett kontroll-ID, attributnamn och attributvärde.

RegisterForEventValidation(PostBackOptions)

Registrerar en händelsereferens för validering med PostBackOptions.

RegisterForEventValidation(String, String)

Registrerar en händelsereferens för validering med ett unikt kontroll-ID och händelseargument som representerar klientkontrollen som genererar händelsen.

RegisterForEventValidation(String)

Registrerar en händelsereferens för validering med ett unikt kontroll-ID som representerar klientkontrollen som genererar händelsen.

RegisterHiddenField(String, String)

Registrerar ett dolt värde med objektet Page .

RegisterOnSubmitStatement(Type, String, String)

Registrerar en OnSubmit-instruktion med objektet med Page hjälp av en typ, en nyckel och en skriptliteral. -instruktionen körs när den HtmlForm skickas.

RegisterStartupScript(Type, String, String, Boolean)

Registrerar startskriptet Page med objektet med hjälp av en typ, en nyckel, en skriptliteral och ett booleskt värde som anger om skripttaggar ska läggas till.

RegisterStartupScript(Type, String, String)

Registrerar startskriptet Page med objektet med hjälp av en typ, en nyckel och en skriptliteral.

ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
ValidateEvent(String, String)

Verifierar en klienthändelse som har registrerats för händelseverifiering med hjälp av RegisterForEventValidation(String, String) metoden.

ValidateEvent(String)

Verifierar en klienthändelse som har registrerats för händelseverifiering med hjälp av RegisterForEventValidation(String) metoden.

Gäller för

Se även