ClientScriptManager Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Définit les méthodes de gestion des scripts clients dans les applications web.
public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
- Héritage
-
ClientScriptManager
Exemples
L’exemple de code suivant illustre l’utilisation de la RegisterClientScriptBlock méthode de la ClientScriptManager classe. Deux scripts clients sont définis dans la page : PopupScript, qui affiche un message d’alerte lorsque la page est chargée et ButtonClickScript, qui définit un gestionnaire client pour l’événement d’un onClick bouton 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>
Remarques
La ClientScriptManager classe est utilisée pour gérer les scripts clients et les ajouter aux applications web. Vous pouvez obtenir une référence à la ClientScriptManager classe à partir de la ClientScript propriété de l’objet Page .
Vous pouvez ajouter un script client à une page web de manière déclarative en incluant le script dans le balisage HTML de la page. Toutefois, il existe des situations où l’ajout dynamique d’un script client est nécessaire. Pour ajouter un script dynamiquement, utilisez la RegisterClientScriptBlock méthode, la RegisterClientScriptInclude méthode, la RegisterStartupScript méthode ou la RegisterOnSubmitStatement méthode, selon le moment et la façon dont vous souhaitez ajouter le script. Pour plus d’informations, consultez Guide pratique pour ajouter dynamiquement un script client à ASP.NET pages web.
La ClientScriptManager classe identifie de façon unique les scripts par une clé String et un Type. Les scripts avec la même clé et le même type sont considérés comme des doublons. L’utilisation du type de script permet d’éviter de confondre des scripts similaires provenant de différents contrôles utilisateur susceptibles d’être utilisés sur la page.
La ClientScriptManager classe peut être utilisée pour appeler des rappels clients dans des situations où il est souhaitable d’exécuter du code serveur à partir du client sans effectuer de publication. Il s’agit de l’exécution d’un rappel hors bande sur le serveur. Dans un rappel client, une fonction de script client envoie une requête asynchrone à une page web ASP.NET. La page Web exécute une version modifiée de son cycle de vie normal pour traiter le rappel. Utilisez la GetCallbackEventReference méthode pour obtenir une référence à une fonction cliente qui, lorsqu’elle est appelée, initie un rappel client à un événement de serveur. Pour plus d’informations, consultez Implémentation des rappels clients sans postbacks.
Note
Les rappels de script ne fonctionnent pas dans les navigateurs plus anciens qui ne prennent pas en charge le modèle DOM (Document Object Model) et nécessitent que ECMAScript soit activé sur le client. Pour vérifier si le navigateur prend en charge les rappels, utilisez la SupportsCallback propriété, accessible via la Browser propriété de l’objet intrinsèque Request ASP.NET.
Utilisez la GetPostBackEventReference méthode et la GetPostBackClientHyperlink méthode pour définir un événement de publication du client. Ces méthodes permettent aux fonctions de script client, lorsqu’elles sont appelées, de renvoyer le serveur à la page. Un événement de publication du client est différent d’un rappel client dans lequel la page Web termine un cycle de vie normal pour traiter l’événement de publication du client.
Note
Si vous utilisez un Button contrôle et que la UseSubmitBehavior propriété est définie false, vous pouvez utiliser la GetPostBackEventReference méthode pour renvoyer l’événement de publication du client pour le Button contrôle.
La OnClientClick propriété du Button contrôle, ImageButton du contrôle et LinkButton du contrôle peut être utilisée pour exécuter le script client.
Méthodes
| Nom | Description |
|---|---|
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| GetCallbackEventReference(Control, String, String, String, Boolean) |
Obtient une référence à une fonction cliente qui, lorsqu’elle est appelée, lance un rappel client aux événements serveur. La fonction cliente de cette méthode surchargée inclut un contrôle, un argument, un script client, un contexte et une valeur booléenne spécifiées. |
| GetCallbackEventReference(Control, String, String, String, String, Boolean) |
Obtient une référence à une fonction cliente qui, lorsqu’elle est appelée, lance un rappel client aux événements serveur. La fonction cliente de cette méthode surchargée inclut un contrôle, un argument, un script client, un contexte, un gestionnaire d’erreurs et une valeur booléenne spécifiée. |
| GetCallbackEventReference(Control, String, String, String) |
Obtient une référence à une fonction cliente qui, lorsqu’elle est appelée, initie un rappel client à un événement de serveur. La fonction cliente de cette méthode surchargée inclut un contrôle, un argument, un script client et un contexte spécifiés. |
| GetCallbackEventReference(String, String, String, String, String, Boolean) |
Obtient une référence à une fonction cliente qui, lorsqu’elle est appelée, lance un rappel client aux événements serveur. La fonction cliente de cette méthode surchargée comprend une cible, un argument, un script client, un contexte, un gestionnaire d’erreurs et une valeur booléenne spécifiée. |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetPostBackClientHyperlink(Control, String, Boolean) |
Obtient une référence, ajoutée |
| GetPostBackClientHyperlink(Control, String) |
Obtient une référence, ajoutée |
| GetPostBackEventReference(Control, String, Boolean) |
Retourne une chaîne à utiliser dans un événement client pour provoquer la publication sur le serveur. La chaîne de référence est définie par le contrôle spécifié qui gère la publication et un argument de chaîne d’informations d’événement supplémentaires. Si vous le souhaitez, inscrit la référence d’événement pour la validation. |
| GetPostBackEventReference(Control, String) |
Retourne une chaîne qui peut être utilisée dans un événement client pour provoquer une publication sur le serveur. La chaîne de référence est définie par le contrôle spécifié qui gère la publication et un argument de chaîne d’informations d’événement supplémentaires. |
| GetPostBackEventReference(PostBackOptions, Boolean) |
Retourne une chaîne qui peut être utilisée dans un événement client pour provoquer une publication sur le serveur. La chaîne de référence est définie par l’objet spécifié PostBackOptions . Si vous le souhaitez, inscrit la référence d’événement pour la validation. |
| GetPostBackEventReference(PostBackOptions) |
Retourne une chaîne qui peut être utilisée dans un événement client pour provoquer une publication sur le serveur. La chaîne de référence est définie par l’instance spécifiée PostBackOptions . |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| GetWebResourceUrl(Type, String) |
Obtient une référence d’URL à une ressource dans un assembly. |
| IsClientScriptBlockRegistered(String) |
Détermine si le bloc de script client est inscrit auprès de l’objet à l’aide Page de la clé spécifiée. |
| IsClientScriptBlockRegistered(Type, String) |
Détermine si le bloc de script client est inscrit auprès de l’objet à l’aide Page d’une clé et d’un type. |
| IsClientScriptIncludeRegistered(String) |
Détermine si le script client include est inscrit auprès de l’objet à l’aide Page de la clé spécifiée. |
| IsClientScriptIncludeRegistered(Type, String) |
Détermine si le script client include est inscrit auprès de l’objet à l’aide Page d’une clé et d’un type. |
| IsOnSubmitStatementRegistered(String) |
Détermine si l’instruction OnSubmit est inscrite auprès de l’objet à l’aide Page de la clé spécifiée. |
| IsOnSubmitStatementRegistered(Type, String) |
Détermine si l’instruction OnSubmit est inscrite auprès de l’objet à l’aide Page de la clé et du type spécifiés. |
| IsStartupScriptRegistered(String) |
Détermine si le script de démarrage est inscrit auprès de l’objet à l’aide Page de la clé spécifiée. |
| IsStartupScriptRegistered(Type, String) |
Détermine si le script de démarrage est inscrit auprès de l’objet à l’aide Page de la clé et du type spécifiés. |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| RegisterArrayDeclaration(String, String) |
Inscrit une déclaration de tableau JavaScript auprès de l’objet à l’aide Page d’un nom de tableau et d’une valeur de tableau. |
| RegisterClientScriptBlock(Type, String, String, Boolean) |
Inscrit le script client auprès de l’objet à l’aide Page d’un type, d’une clé, d’un littéral de script et d’une valeur booléenne indiquant s’il faut ajouter des balises de script. |
| RegisterClientScriptBlock(Type, String, String) |
Inscrit le script client auprès de l’objet à l’aide Page d’un type, d’une clé et d’un littéral de script. |
| RegisterClientScriptInclude(String, String) |
Inscrit le script client auprès de l’objet à l’aide Page d’une clé et d’une URL, ce qui permet au script d’être appelé à partir du client. |
| RegisterClientScriptInclude(Type, String, String) |
Inscrit le script client avec l’objet à l’aide Page d’un type, d’une clé et d’une URL. |
| RegisterClientScriptResource(Type, String) |
Inscrit la ressource de script client auprès de l’objet à l’aide Page d’un type et d’un nom de ressource. |
| RegisterExpandoAttribute(String, String, String, Boolean) |
Inscrit une paire nom/valeur en tant qu’attribut personnalisé (expando) du contrôle spécifié en fonction d’un ID de contrôle, d’un nom d’attribut, d’une valeur d’attribut et d’une valeur booléenne indiquant s’il faut encoder la valeur d’attribut. |
| RegisterExpandoAttribute(String, String, String) |
Inscrit une paire nom/valeur en tant qu’attribut personnalisé (expando) du contrôle spécifié en fonction d’un ID de contrôle, d’un nom d’attribut et d’une valeur d’attribut. |
| RegisterForEventValidation(PostBackOptions) |
Inscrit une référence d’événement pour la validation auprès PostBackOptionsde . |
| RegisterForEventValidation(String, String) |
Inscrit une référence d’événement pour la validation avec un ID de contrôle unique et des arguments d’événement représentant le contrôle client générant l’événement. |
| RegisterForEventValidation(String) |
Inscrit une référence d’événement pour la validation avec un ID de contrôle unique représentant le contrôle client générant l’événement. |
| RegisterHiddenField(String, String) |
Inscrit une valeur masquée avec l’objet Page . |
| RegisterOnSubmitStatement(Type, String, String) |
Inscrit une instruction OnSubmit auprès de l’objet à l’aide Page d’un type, d’une clé et d’un littéral de script. L’instruction s’exécute lorsque l’instruction HtmlForm est envoyée. |
| RegisterStartupScript(Type, String, String, Boolean) |
Inscrit le script de démarrage auprès de l’objet à l’aide Page d’un type, d’une clé, d’un littéral de script et d’une valeur booléenne indiquant s’il faut ajouter des balises de script. |
| RegisterStartupScript(Type, String, String) |
Inscrit le script de démarrage auprès de l’objet à l’aide Page d’un type, d’une clé et d’un littéral de script. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| ValidateEvent(String, String) |
Valide un événement client inscrit pour la validation d’événement à l’aide de la RegisterForEventValidation(String, String) méthode. |
| ValidateEvent(String) |
Valide un événement client inscrit pour la validation d’événement à l’aide de la RegisterForEventValidation(String) méthode. |