Control.ClientID Propriété
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.
Obtient l’ID de contrôle du balisage HTML généré par ASP.NET.
public:
virtual property System::String ^ ClientID { System::String ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual string ClientID { get; }
[<System.ComponentModel.Browsable(false)>]
member this.ClientID : string
Public Overridable ReadOnly Property ClientID As String
Valeur de propriété
ID de contrôle du balisage HTML généré par ASP.NET.
- Attributs
Exemples
Les exemples suivants montrent un contrôle utilisateur web qui se trouve à l’intérieur d’une page de contenu pour une page maître. Le contrôle utilisateur contient un DropDownList contrôle et un Label contrôle. Le texte affiché dans le Label contrôle est déterminé par la valeur que l’utilisateur sélectionne dans le DropDownList contrôle. La valeur de texte est définie par le biais d’un script client afin que la page web n’ait pas à publier sur le serveur pour définir cette valeur. Pour obtenir une référence à l’élément HTML rendu pour le contrôle dans le Label script client, vous devez connaître la valeur de la propriété du ClientID contrôle. Toutefois, étant donné que le contrôle utilisateur peut être placé n’importe où dans une page Web, il est impossible de savoir à l’avance quels conteneurs de nommage contiennent les contrôles. Pour vous assurer que la ClientID valeur sera identique à la ID valeur, le code définit la ClientIDMode valeur sur Static.
L’exemple suivant montre le contrôle utilisateur.
<%@ Control AutoEventWireup="true" %>
<script type="text/javascript">
var seasonalSports = new Array("None selected",
"Tennis",
"Volleyball",
"Baseball",
"Skiing");
function DisplaySport(x) {
document.getElementById("SelectedSport").innerHTML
= seasonalSports[x];
}
</script>
<asp:DropDownList ID="DropDownList1" runat="server"
onchange="DisplaySport(this.selectedIndex);">
<asp:ListItem Value="Select a season"></asp:ListItem>
<asp:ListItem Value="Spring"></asp:ListItem>
<asp:ListItem Value="Summer"></asp:ListItem>
<asp:ListItem Value="Autumn"></asp:ListItem>
<asp:ListItem Value="Winter"></asp:ListItem>
</asp:DropDownList>
<br />
<asp:Label ID="SelectedSport" runat="server" ClientIDMode="Static">
</asp:Label>
L’exemple suivant montre la page de contenu qui contient le contrôle utilisateur.
<%@ Page Title="" MasterPageFile="~/Seasons.master" AutoEventWireup="true" %>
<%@ Register Src="Seasons.ascx" TagName="Seasons" TagPrefix="uc1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<uc1:Seasons ID="Seasons1" runat="server" />
</asp:Content>
L’exemple suivant montre la page maître qui contient la page de contenu.
<%@ Master AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ContentPlaceHolder id="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</div>
</form>
</body>
</html>
Remarques
Lorsqu’un contrôle serveur web est rendu en tant qu’élément HTML, l’attribut id
de l’élément HTML est défini sur la valeur de la ClientID propriété . La ClientID valeur est souvent utilisée pour accéder à l’élément HTML dans le script client à l’aide de la document.getElementById
méthode . L’ID est également souvent utilisé dans les règles CSS pour spécifier des éléments à styler. Par exemple, la règle de style CSS suivante sélectionne tous les span
éléments qui ont la id
valeur d’attribut de ProductIDLabel
et définit leur background-color
attribut sur white
:
span#ProductIDLabel { background-color: white; }
ASP.NET fournit plusieurs algorithmes pour générer la valeur de la ClientID propriété. Vous sélectionnez l’algorithme à utiliser pour un contrôle en définissant sa ClientIDMode propriété. Les algorithmes sont identifiés par les valeurs d’énumération ClientIDMode répertoriées dans le tableau suivant.
Valeur | Description |
---|---|
AutoID | La valeur de la propriété ClientID est générée par concaténation des valeurs de la propriété ID de chaque conteneur d'attribution de noms parent à la valeur de la propriété ID du contrôle. Dans les scénarios de liaison de données où plusieurs instances d'un contrôle sont restituées, une valeur d'incrémentation est insérée devant la valeur de la propriété ID du contrôle. Chaque segment est séparé par un trait de soulignement (_). Cet algorithme a été utilisé dans les versions de ASP.NET antérieures à ASP.NET 4. |
Static | La propriété ClientID a la valeur de la propriété ID. Si le contrôle est un conteneur d'attribution de noms, il est utilisé comme élément le plus élevé de la hiérarchie des conteneurs d'attribution de noms pour tous les contrôles qu'il contient. |
Predictable | Cet algorithme est utilisé pour les contrôles contenus dans des contrôles liés aux données. La valeur de la propriété ClientID est générée par concaténation de la valeur de la propriété ClientID du conteneur d'attribution de noms parent à la valeur de la propriété ID du contrôle. Si le contrôle est un contrôle lié aux données qui génère plusieurs lignes, la valeur du champ de données spécifiée dans la propriété ClientIDRowSuffix est ajoutée à la fin. Pour le contrôle GridView, plusieurs champs de données peuvent être spécifiés. Si la ClientIDRowSuffix propriété est vide, un nombre séquentiel est ajouté à la fin au lieu d’une valeur de champ de données. Chaque segment est séparé par un trait de soulignement (_). |
Inherit | Le contrôle hérite du paramètre de ClientIDMode de son contrôle NamingContainer. |
La valeur par défaut d’une ClientIDMode page est Predictable. La valeur par défaut d’un ClientIDMode contrôle est Inherit. Étant donné que la valeur par défaut des contrôles est Inherit, le mode de génération par défaut est Predictable. (Toutefois, si vous utilisez Visual Studio pour convertir un projet web en ASP.NET 4 à partir d’une version antérieure, Visual Studio définit automatiquement la valeur par défaut AutoID du site dans le fichier Web.config.)
Pour plus d’informations, consultez Identification du contrôle serveur web ASP.NET.
S’applique à
Voir aussi
- NamingContainer
- ID
- INamingContainer
- Identification du contrôle ASP.NET
- Guide pratique pour accéder aux contrôles à partir de JavaScript par ID
- Procédure pas à pas : faciliter l’accès aux contrôles Data-Bound à partir de JavaScript
- Procédure pas à pas : Faciliter l’accès des contrôles situés dans les contrôles utilisateur web à partir de JavaScript
- Script client dans ASP.NET pages web