Control.ClientID Vlastnost

Definice

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

String

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 za účelem nastavení této hodnoty publikovat zpět na server. 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í však možné předem vědět, 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 ovládací prvek webového serveru vykreslen jako element HTML, id atribut prvku HTML 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 id ProductIDLabel a nastaví jejich background-color atribut na white:

span#ProductIDLabel { background-color: white; }

ASP.NET poskytuje více algoritmů, jak vygenerovat ClientID hodnotu vlastnosti. Vyberete, který algoritmus chcete použít pro ovládací prvek nastavením jeho ClientIDMode vlastnosti. Algoritmy jsou identifikovány hodnotami výčtu ClientIDMode , které jsou uvedeny v následující tabulce.

Hodnota Popis
AutoID Hodnota ClientID je generována 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 je generována 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 ClientIDRowSuffix ve vlastnosti se přidá na konec. GridView Pro ovládací prvek lze zadat více datových polí. ClientIDRowSuffix Pokud je vlastnost prázdná, přidá se na konec pořadové číslo místo hodnoty datového pole. 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ím nastavením ovládacích prvků je Inheritvýchozí režim Predictablegenerování . (Pokud ale použijete Visual Studio k převodu webového projektu na ASP.NET 4 ze starší verze, Visual Studio automaticky nastaví výchozí nastavení AutoID webu v souboru Web.config.)

Další informace najdete v tématu ASP.NET identifikace ovládacího prvku webového serveru.

Platí pro

Viz také