Control.ClientID Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá ID ovládacího prvku pro kód HTML, který je generován 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
Hodnota vlastnosti
ID ovládacího prvku pro kód HTML, který je generován ASP.NET.
- Atributy
Příklady
Následující příklady ukazují ovládací prvek webového uživatele, který je uvnitř stránky obsahu stránky předlohy. Uživatelský ovládací prvek obsahuje DropDownList ovládací prvek a Label ovládací prvek. Text zobrazený v ovládacím Label prvku je určen hodnotou, kterou uživatel vybere z DropDownList ovládacího prvku. Textová hodnota je nastavena prostřednictvím klientského skriptu, aby webová stránka nemusela publikovat zpět na server, aby bylo možné tuto hodnotu nastavit. Chcete-li získat odkaz na element HTML, který je vykreslen pro Label ovládací prvek v klientském skriptu, musíte znát hodnotu vlastnosti ovládacího prvku ClientID . Vzhledem k tomu, že uživatelský ovládací prvek lze umístit kamkoli na webovou stránku, není možné předem zjistit, které kontejnery pojmenování budou obsahovat ovládací prvky. Chcete-li zajistit, aby ClientID hodnota byla stejná jako ID hodnota, kód nastaví ClientIDMode hodnotu na Static.
Následující příklad ukazuje uživatelský ovládací prvek.
<%@ 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>
Následující příklad ukazuje stránku obsahu, která obsahuje uživatelský ovládací prvek.
<%@ 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>
Následující příklad ukazuje stránku předlohy, která obsahuje stránku obsahu.
<%@ 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>
Poznámky
Pokud je webový server ovládací prvek vykreslen jako HTML element, id atribut HTML element je nastaven na hodnotu ClientID vlastnosti. Hodnota ClientID se často používá pro přístup k elementu HTML v klientském skriptu pomocí document.getElementById metody. ID se také často používá v pravidlech CSS k určení prvků pro styl. Například následující pravidlo stylu CSS vybere všechny span prvky, které mají hodnotu atributu idProductIDLabel a nastaví jejich background-color atribut na white:
span#ProductIDLabel { background-color: white; }
ASP.NET poskytuje více algoritmů, jak vygenerovat ClientID hodnotu vlastnosti. Výběrem algoritmu, který se má použít pro ovládací prvek, nastavíte jeho ClientIDMode vlastnost. Algoritmy jsou identifikovány hodnotami výčtu ClientIDMode , které jsou uvedeny v následující tabulce.
| Hodnota | Description |
|---|---|
| AutoID | Tato ClientID hodnota se vygeneruje zřetězením ID hodnot každého nadřazeného kontejneru pojmenování s ID hodnotou ovládacího prvku. Ve scénářích datových vazeb, ve kterých se vykreslí více instancí ovládacího prvku, se před hodnotu ovládacího prvku ID vloží přírůstková hodnota. Každý segment je oddělený znakem podtržítka (_). Tento algoritmus byl použit ve verzích ASP.NET starších než ASP.NET 4. |
| Static | Hodnota ClientID je nastavena na hodnotu ID vlastnosti. Pokud je ovládací prvek kontejner pojmenování, ovládací prvek se použije jako horní část hierarchie pojmenování kontejnerů pro všechny ovládací prvky, které obsahuje. |
| Predictable | Tento algoritmus se používá pro ovládací prvky, které jsou v ovládacích prvcích vázaných na data. Hodnota ClientID se generuje zřetězením ClientID hodnoty nadřazeného kontejneru pojmenování s ID hodnotou ovládacího prvku. Pokud je ovládací prvek vázaný na data, který generuje více řádků, hodnota datového pole zadaného ve ClientIDRowSuffix vlastnosti se přidá na konec. GridView Pro ovládací prvek lze zadat více datových polí. ClientIDRowSuffix Pokud je vlastnost prázdná, na konci se místo hodnoty datového pole přidá pořadové číslo. Každý segment je oddělený znakem podtržítka (_). |
| Inherit | Ovládací prvek dědí ClientIDMode nastavení jeho NamingContainer ovládacího prvku. |
Výchozí hodnota ClientIDMode stránky je Predictable. Výchozí hodnota ClientIDMode ovládacího prvku je Inherit. Vzhledem k tomu, že výchozí pro ovládací prvky je Inherit, výchozí režim generování je Predictable. (Pokud ale pomocí sady Visual Studio převedete webový projekt na ASP.NET 4 ze starší verze, sada Visual Studio automaticky nastaví výchozí nastavení AutoID webu v souboru Web.config.)
Další informace naleznete v tématu ASP.NET Identifikace ovládacího prvku webového serveru.
Platí pro
Viz také
- NamingContainer
- ID
- INamingContainer
- identifikace ovládacích prvků ASP.NET
- Postupy: Přístup k ovládacím prvkům z JavaScriptu podle ID
- Návod: Usnadnění přístupu k ovládacím prvkům Data-Bound z JavaScriptu
- Návod: Usnadnění přístupu k ovládacím prvkům webového uživatele z JavaScriptu
- Klientský skript na webových stránkách ASP.NET