Udostępnij za pośrednictwem


ClientScriptManager Klasa

Definicja

Definiuje metody zarządzania skryptami klienta w aplikacjach internetowych.

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

Przykłady

Poniższy przykład kodu przedstawia użycie RegisterClientScriptBlock metody ClientScriptManager klasy. Dwa skrypty klienta są zdefiniowane na stronie: PopupScript, który wyświetla komunikat alertu po załadowaniu strony i ButtonClickScript, który definiuje procedurę obsługi klienta dla zdarzenia przycisku onClick HTML.

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

Uwagi

Klasa ClientScriptManager służy do zarządzania skryptami klienta i dodawania ich do aplikacji internetowych. Odwołanie do ClientScriptManager klasy można uzyskać z ClientScript właściwości Page obiektu.

Skrypt klienta można dodać do strony sieci Web deklaratywnie, dołączając skrypt do znaczników HTML strony. Jednak podczas dynamicznego dodawania skryptu klienta są wymagane sytuacje. Aby dynamicznie dodać skrypt, użyj RegisterClientScriptBlock metody, metody, RegisterStartupScript metody lub RegisterOnSubmitStatement metody, w zależności od tego, RegisterClientScriptInclude kiedy i jak chcesz dodać skrypt. Aby uzyskać więcej informacji, zobacz Instrukcje: dynamiczne dodawanie skryptu klienta do ASP.NET stron sieci Web.

Klasa ClientScriptManager jednoznacznie identyfikuje skrypty według klucza String i .Type Skrypty z tym samym kluczem i typem są traktowane jako duplikaty. Użycie typu skryptu pomaga uniknąć mylących podobnych skryptów z różnych kontrolek użytkownika, które mogą być używane na stronie.

Klasa ClientScriptManager może służyć do wywoływania wywołań zwrotnych klienta w sytuacjach, gdy pożądane jest uruchomienie kodu serwera od klienta bez wykonywania pozwu zwrotnego. Jest to nazywane wykonywaniem wywołania zwrotnego poza pasmem na serwerze. W wywołaniu zwrotnym klienta funkcja skryptu klienta wysyła żądanie asynchroniczne do strony sieci Web ASP.NET. Strona sieci Web uruchamia zmodyfikowaną wersję normalnego cyklu życia w celu przetworzenia wywołania zwrotnego. GetCallbackEventReference Użyj metody , aby uzyskać odwołanie do funkcji klienta, która po wywołaniu inicjuje wywołanie zwrotne klienta do zdarzenia serwera. Aby uzyskać więcej informacji, zobacz Implementowanie wywołań zwrotnych klienta bez poświadczeń zwrotnych.

Uwaga

Wywołania zwrotne skryptów nie będą działać w starszych przeglądarkach, które nie obsługują modelu obiektów dokumentów (DOM) i wymagają włączenia języka ECMAScript na kliencie. Aby sprawdzić, czy przeglądarka obsługuje wywołania zwrotne, użyj SupportsCallback właściwości dostępnej za pośrednictwem Browser właściwości obiektu wewnętrznego Request ASP.NET.

GetPostBackEventReference Użyj metody i GetPostBackClientHyperlink metody , aby zdefiniować zdarzenie po powrocie zwrotne klienta. Te metody umożliwiają funkcje skryptu klienta, gdy są wywoływane, aby serwer publikował z powrotem na stronie. Zdarzenie pozwu zwrotnego klienta różni się od wywołania zwrotnego klienta w tym, że strona sieci Web kończy normalny cykl życia w celu przetworzenia zdarzenia zwrotnego klienta.

Uwaga

Jeśli używasz kontrolki i UseSubmitBehavior właściwość jest ustawiona na false, możesz użyć GetPostBackEventReference metody , aby zwrócić zdarzenie po powrocie klienta dla kontrolkiButton.Button

Właściwość OnClientClick kontrolki, ImageButton kontrolki Button i LinkButton kontrolki może służyć do uruchamiania skryptu klienta.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetCallbackEventReference(Control, String, String, String)

Uzyskuje odwołanie do funkcji klienta, która po wywołaniu inicjuje wywołanie klienta z powrotem do zdarzenia serwera. Funkcja klienta dla tej przeciążonej metody zawiera określoną kontrolkę, argument, skrypt klienta i kontekst.

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

Uzyskuje odwołanie do funkcji klienta, która po wywołaniu inicjuje wywołanie klienta z powrotem do zdarzeń serwera. Funkcja klienta dla tej przeciążonej metody zawiera określoną kontrolkę, argument, skrypt klienta, kontekst i wartość logiczną.

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

Uzyskuje odwołanie do funkcji klienta, która po wywołaniu inicjuje wywołanie klienta z powrotem do zdarzeń serwera. Funkcja klienta dla tej przeciążonej metody obejmuje określoną kontrolkę, argument, skrypt klienta, kontekst, procedurę obsługi błędów i wartość logiczną.

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

Uzyskuje odwołanie do funkcji klienta, która po wywołaniu inicjuje wywołanie klienta z powrotem do zdarzeń serwera. Funkcja klienta dla tej przeciążonej metody obejmuje określony element docelowy, argument, skrypt klienta, kontekst, procedurę obsługi błędów i wartość logiczną.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetPostBackClientHyperlink(Control, String)

Pobiera odwołanie, z javascript: dołączonym do początku, które może być używane w zdarzeniu klienta, aby wrócić do serwera dla określonej kontrolki i z określonymi argumentami zdarzeń.

GetPostBackClientHyperlink(Control, String, Boolean)

Pobiera odwołanie z javascript: dołączonym do początku, które może być używane w zdarzeniu klienta, aby wrócić do serwera dla określonej kontrolki z określonymi argumentami zdarzeń i wskazaniem logicznym, czy zarejestrować post z powrotem w celu weryfikacji zdarzeń.

GetPostBackEventReference(Control, String)

Zwraca ciąg, który może być używany w zdarzeniu klienta, aby spowodować powrót do serwera. Ciąg odwołania jest definiowany przez określoną kontrolkę, która obsługuje postback i argument ciągu dodatkowych informacji o zdarzeniach.

GetPostBackEventReference(Control, String, Boolean)

Zwraca ciąg, który ma być używany w zdarzeniu klienta, aby spowodować powrót do serwera. Ciąg odwołania jest definiowany przez określoną kontrolkę, która obsługuje postback i argument ciągu dodatkowych informacji o zdarzeniach. Opcjonalnie rejestruje odwołanie do zdarzenia w celu weryfikacji.

GetPostBackEventReference(PostBackOptions)

Zwraca ciąg, który może być używany w zdarzeniu klienta, aby spowodować powrót do serwera. Ciąg odwołania jest definiowany przez określone PostBackOptions wystąpienie.

GetPostBackEventReference(PostBackOptions, Boolean)

Zwraca ciąg, który może być używany w zdarzeniu klienta, aby spowodować powrót do serwera. Ciąg odwołania jest definiowany przez określony PostBackOptions obiekt. Opcjonalnie rejestruje odwołanie do zdarzenia w celu weryfikacji.

GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
GetWebResourceUrl(Type, String)

Pobiera odwołanie do adresu URL zasobu w zestawie.

IsClientScriptBlockRegistered(String)

Określa, czy blok skryptu klienta jest zarejestrowany w Page obiekcie przy użyciu określonego klucza.

IsClientScriptBlockRegistered(Type, String)

Określa, czy blok skryptu klienta jest zarejestrowany w Page obiekcie przy użyciu klucza i typu.

IsClientScriptIncludeRegistered(String)

Określa, czy skrypt klienta jest zarejestrowany w Page obiekcie przy użyciu określonego klucza.

IsClientScriptIncludeRegistered(Type, String)

Określa, czy skrypt klienta jest zarejestrowany w Page obiekcie przy użyciu klucza i typu.

IsOnSubmitStatementRegistered(String)

Określa, czy instrukcja OnSubmit jest zarejestrowana w Page obiekcie przy użyciu określonego klucza.

IsOnSubmitStatementRegistered(Type, String)

Określa, czy instrukcja OnSubmit jest zarejestrowana w Page obiekcie przy użyciu określonego klucza i typu.

IsStartupScriptRegistered(String)

Określa, czy skrypt uruchamiania jest zarejestrowany w Page obiekcie przy użyciu określonego klucza.

IsStartupScriptRegistered(Type, String)

Określa, czy skrypt uruchamiania jest zarejestrowany w Page obiekcie przy użyciu określonego klucza i typu.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
RegisterArrayDeclaration(String, String)

Rejestruje deklarację tablicy JavaScript z Page obiektem przy użyciu nazwy tablicy i wartości tablicy.

RegisterClientScriptBlock(Type, String, String)

Rejestruje skrypt klienta z Page obiektem przy użyciu typu, klucza i literału skryptu.

RegisterClientScriptBlock(Type, String, String, Boolean)

Rejestruje skrypt klienta z Page obiektem przy użyciu typu, klucza, literału skryptu i wartości logicznej wskazującej, czy dodać tagi skryptu.

RegisterClientScriptInclude(String, String)

Rejestruje skrypt klienta z Page obiektem przy użyciu klucza i adresu URL, który umożliwia wywoływanie skryptu z klienta.

RegisterClientScriptInclude(Type, String, String)

Rejestruje skrypt klienta dołączany do Page obiektu przy użyciu typu, klucza i adresu URL.

RegisterClientScriptResource(Type, String)

Rejestruje zasób skryptu Page klienta z obiektem przy użyciu typu i nazwy zasobu.

RegisterExpandoAttribute(String, String, String)

Rejestruje parę nazw/wartości jako atrybut niestandardowy (expando) określonej kontrolki przy użyciu identyfikatora kontrolki, nazwy atrybutu i wartości atrybutu.

RegisterExpandoAttribute(String, String, String, Boolean)

Rejestruje parę nazw/wartości jako atrybut niestandardowy (expando) określonej kontrolki przy użyciu identyfikatora kontrolki, nazwy atrybutu, wartości atrybutu i wartości logicznej wskazującej, czy zakodować wartość atrybutu.

RegisterForEventValidation(PostBackOptions)

Rejestruje odwołanie do zdarzenia na potrzeby walidacji za pomocą polecenia PostBackOptions.

RegisterForEventValidation(String)

Rejestruje odwołanie do zdarzenia do walidacji przy użyciu unikatowego identyfikatora kontrolki reprezentującego kontrolkę klienta generującą zdarzenie.

RegisterForEventValidation(String, String)

Rejestruje odwołanie do zdarzenia do weryfikacji przy użyciu unikatowego identyfikatora kontrolki i argumentów zdarzeń reprezentujących kontrolkę klienta generującą zdarzenie.

RegisterHiddenField(String, String)

Rejestruje ukrytą wartość w Page obiekcie.

RegisterOnSubmitStatement(Type, String, String)

Rejestruje instrukcję OnSubmit z Page obiektem przy użyciu typu, klucza i literału skryptu. Instrukcja jest wykonywana po przesłaniu HtmlForm .

RegisterStartupScript(Type, String, String)

Rejestruje skrypt uruchamiania z Page obiektem przy użyciu typu, klucza i literału skryptu.

RegisterStartupScript(Type, String, String, Boolean)

Rejestruje skrypt uruchamiania z Page obiektem przy użyciu typu, klucza, literału skryptu i wartości logicznej wskazującej, czy dodać tagi skryptu.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
ValidateEvent(String)

Weryfikuje zdarzenie klienta, które zostało zarejestrowane na potrzeby weryfikacji zdarzeń przy użyciu RegisterForEventValidation(String) metody .

ValidateEvent(String, String)

Weryfikuje zdarzenie klienta, które zostało zarejestrowane na potrzeby weryfikacji zdarzeń przy użyciu RegisterForEventValidation(String, String) metody .

Dotyczy

Zobacz też