ClientScriptManager Classe

Definição

Define métodos para gerenciar scripts de cliente em aplicativos Web.

public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
Herança
ClientScriptManager

Exemplos

O exemplo de código a seguir demonstra o uso do RegisterClientScriptBlock método da ClientScriptManager classe. Dois scripts de cliente são definidos na página: PopupScript, que exibe uma mensagem de alerta quando a página é carregada e ButtonClickScript, que define um manipulador de cliente para o evento de onClick um botão 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>

Comentários

A ClientScriptManager classe é usada para gerenciar scripts de cliente e adicioná-los a aplicativos Web. Você pode obter uma referência à ClientScriptManager classe da ClientScript propriedade do Page objeto.

Você pode adicionar um script de cliente a uma página da Web declarativamente, incluindo o script na marcação HTML da página. No entanto, há situações em que é necessário adicionar o script do cliente dinamicamente. Para adicionar um script dinamicamente, use o RegisterClientScriptBlock método, o RegisterClientScriptInclude método, o RegisterStartupScript método ou o RegisterOnSubmitStatement método, dependendo de quando e como você deseja adicionar o script. Para obter mais informações, consulte Como adicionar script de cliente dinamicamente ao Páginas da Web do ASP.NET.

A ClientScriptManager classe identifica exclusivamente scripts por uma chave String e um Type. Scripts com a mesma chave e tipo são considerados duplicados. Usar o tipo de script ajuda a evitar confundir scripts semelhantes de diferentes controles de usuário que podem estar em uso na página.

A ClientScriptManager classe pode ser usada para invocar retornos de chamada do cliente em situações em que é desejável executar o código do servidor do cliente sem executar um postback. Isso é conhecido como executar um retorno de chamada fora da banda para o servidor. Em um retorno de chamada do cliente, uma função de script do cliente envia uma solicitação assíncrona para uma página da Web ASP.NET. A página da Web executa uma versão modificada de seu ciclo de vida normal para processar o retorno de chamada. Use o GetCallbackEventReference método para obter uma referência a uma função cliente que, quando invocada, inicia um retorno de chamada de cliente para um evento de servidor. Para obter mais informações, consulte Implementando retornos de chamada do cliente sem postbacks.

Observação

Os retornos de chamada de script não funcionarão em navegadores mais antigos que não dão suporte ao DOM (Modelo de Objeto de Documento) e exigem que o ECMAScript esteja habilitado no cliente. Para verificar se o navegador dá suporte a retornos de chamada, use a SupportsCallback propriedade, que é acessível por meio Browser da propriedade do objeto intrínseco Request ASP.NET.

Use o GetPostBackEventReference método e o GetPostBackClientHyperlink método para definir um evento de postback do cliente. Esses métodos permitem que as funções de script do cliente, quando invocadas, causem a postagem do servidor na página. Um evento de postback do cliente é diferente de um retorno de chamada do cliente, na qual a página da Web conclui um ciclo de vida normal para processar o evento de postback do cliente.

Observação

Se você estiver usando um Button controle e a UseSubmitBehavior propriedade estiver definida como false, você poderá usar o GetPostBackEventReference método para retornar o evento de postback do cliente para o Button controle.

A OnClientClick propriedade do controle, ImageButton controle e LinkButton controle pode ser usada para executar o Button script do cliente.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetCallbackEventReference(Control, String, String, String)

Obtém uma referência a uma função de cliente que, quando invocada, inicia um retorno de chamada do cliente para um evento de servidor. A função do cliente para esse método sobrecarregado inclui um controle, argumento, script de cliente e contexto especificados.

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

Obtém uma referência a uma função de cliente que, quando invocada, inicia um retorno de chamada do cliente para eventos de servidor. A função do cliente para esse método sobrecarregado inclui um controle, um argumento, um script de cliente, um contexto e um valor booliano especificados.

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

Obtém uma referência a uma função de cliente que, quando invocada, inicia um retorno de chamada do cliente para eventos de servidor. A função do cliente para esse método sobrecarregado inclui um controle, um argumento, um script de cliente, um contexto, um manipulador de erros e m valor booliano especificados.

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

Obtém uma referência a uma função de cliente que, quando invocada, inicia um retorno de chamada do cliente para eventos de servidor. A função do cliente para esse método sobrecarregado inclui um destino, argumento, script de cliente, contexto, manipulador de erro e valor booliano especificados.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetPostBackClientHyperlink(Control, String)

Obtém uma referência, com javascript: acrescentado ao início, que pode ser usada em um evento de cliente para postback ao servidor do controle especificado e com os argumentos de evento especificados.

GetPostBackClientHyperlink(Control, String, Boolean)

Obtém uma referência, com javascript: acrescentado ao início, que pode ser usada em um evento de cliente para postback ao servidor do controle especificado com os argumentos de evento especificados, bem como com um indicação booliana especificando se é para registrar o postback para a validação de evento.

GetPostBackEventReference(Control, String)

Retorna uma cadeia de caracteres que pode ser usada em um evento de cliente para fazer postback no servidor. A cadeia de caracteres de referência é definida pelo controle especificado que manipula o postback e um argumento de cadeia de caracteres de informações de evento adicionais.

GetPostBackEventReference(Control, String, Boolean)

Retorna uma cadeia de caracteres a ser usada em um evento de cliente para executar postback no servidor. A cadeia de caracteres de referência é definida pelo controle especificado que manipula o postback e um argumento de cadeia de caracteres de informações de evento adicionais. Opcionalmente, registra a referência de evento para validação.

GetPostBackEventReference(PostBackOptions)

Retorna uma cadeia de caracteres que pode ser usada em um evento de cliente para fazer postback no servidor. A cadeia de caracteres de referência é definida pela instância PostBackOptions especificada.

GetPostBackEventReference(PostBackOptions, Boolean)

Retorna uma cadeia de caracteres que pode ser usada em um evento de cliente para fazer postback no servidor. A cadeia de caracteres de referência é definida pelo objeto PostBackOptions especificado. Opcionalmente, registra a referência de evento para validação.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetWebResourceUrl(Type, String)

Obtém uma referência de URL para um recurso em um assembly.

IsClientScriptBlockRegistered(String)

Determina se o bloco de script de cliente está registrado com o objeto Page usando a chave especificada.

IsClientScriptBlockRegistered(Type, String)

Determina se o bloco de script de cliente está registrado com o objeto Page usando uma chave e um tipo.

IsClientScriptIncludeRegistered(String)

Determina se o script de cliente de inclusão está registrado com o objeto Page usando a chave especificada.

IsClientScriptIncludeRegistered(Type, String)

Determina se o script de cliente de inclusão está registrado com o objeto Page usando uma chave e um tipo.

IsOnSubmitStatementRegistered(String)

Determina se a instrução OnSubmit está registrada com o objeto Page usando a chave especificada.

IsOnSubmitStatementRegistered(Type, String)

Determina se a instrução OnSubmit está registrada com o objeto Page usando a chave e o tipo especificados.

IsStartupScriptRegistered(String)

Determina se o script de inicialização está registrado com o objeto Page usando a chave especificada.

IsStartupScriptRegistered(Type, String)

Determina se script de inicialização está registrado com o objeto Page usando o tipo e a chave especificados.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
RegisterArrayDeclaration(String, String)

Registra uma declaração de matriz JavaScript com o Page usando um nome de matriz e um valor de matriz do objeto.

RegisterClientScriptBlock(Type, String, String)

Registra o script de cliente com o objeto Page usando um tipo, uma chave e uma literal de script.

RegisterClientScriptBlock(Type, String, String, Boolean)

Registra o script de cliente no objeto Page usando um tipo, uma chave, um literal de script e um valor booliano indicando se devem ser adicionadas marcas de script.

RegisterClientScriptInclude(String, String)

Registra o script de cliente com o objeto Page usando uma chave e uma URL, que permite que o script seja chamado pelo cliente.

RegisterClientScriptInclude(Type, String, String)

Registra o script de cliente incluído no objeto Page usando um tipo, uma chave e uma URL.

RegisterClientScriptResource(Type, String)

Registra o recurso de script de cliente com o objeto Page usando um tipo e um nome de recurso.

RegisterExpandoAttribute(String, String, String)

Registra um par nome/valor como um atributo personalizado (expando) do controle especificado, considerando uma ID de controle, um nome de atributo e um valor de atributo especificados.

RegisterExpandoAttribute(String, String, String, Boolean)

Registra um par nome/valor como um atributo personalizado (expando) do controle especificado considerando uma ID de controle, um nome de atributo, um valor de atributo e um valor booliano que indica se é necessário codificar o valor de atributo.

RegisterForEventValidation(PostBackOptions)

Registra uma referência de evento para validação com PostBackOptions.

RegisterForEventValidation(String)

Registra uma referência de evento para validação com uma ID de controle exclusiva que representa o controle de cliente que gera o evento.

RegisterForEventValidation(String, String)

Registra uma referência de evento para validação, com uma ID de controle exclusiva e argumentos do evento que representam o controle de cliente que gera o evento.

RegisterHiddenField(String, String)

Registra um valor oculto com o objeto Page.

RegisterOnSubmitStatement(Type, String, String)

Registra a instrução OnSubmit com o objeto Page usando um tipo, uma chave e um literal de script. A instrução é executada quando o HtmlForm é enviado.

RegisterStartupScript(Type, String, String)

Registra o script de inicialização no objeto Page usando um tipo, uma chave e um literal de script.

RegisterStartupScript(Type, String, String, Boolean)

Registra o script de inicialização no objeto Page usando um tipo, uma chave, um literal de script e um valor booliano indicando se devem ser adicionadas marcas de script.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
ValidateEvent(String)

Valida um evento de cliente que foi registrado para a validação de evento usando o método RegisterForEventValidation(String).

ValidateEvent(String, String)

Valida um evento de cliente que foi registrado para a validação de evento usando o método RegisterForEventValidation(String, String).

Aplica-se a

Confira também