共用方式為


ClientIDMode 列舉

定義

指定 ASP.NET 如何針對可在用戶端指令碼中存取的控制項產生 ClientID

public enum class ClientIDMode
public enum ClientIDMode
type ClientIDMode = 
Public Enum ClientIDMode
繼承
ClientIDMode

欄位

AutoID 1

ClientID 值是透過串連每個父命名容器的 ID 值與控制項的 ID 值產生。 在呈現控制項之多個執行個體的資料繫結情節中,遞增值會插入控制項之 ID 值的前面。 各區段是以底線字元 (_) 分隔。 這是唯一可在比 ASP.NET 4 還舊的版本中使用的演算法。

Inherit 0

此控制項會繼承其 ClientIDMode 控制項的 NamingContainer 設定。

Predictable 2

這個演算法用於資料繫結控制項中的控制項。 ClientID 值是透過串連父命名容器的 ClientID 值與控制項的 ID 值產生。 如果控制項是資料繫結控制項,並且會產生多個資料列,則 ClientIDRowSuffix 屬性中指定之資料欄位的值會加入結尾處。 針對 GridView 控制項,可以指定多個資料欄位。 如果 ClientIDRowSuffix 是空屬性,則會在結尾處加入序號,而不是資料欄位值。 各區段是以底線字元 (_) 分隔。

Static 3

ClientID 值設定為 ID 屬性的值。 如果控制項是命名容器,則對於其包含的所有控制項而言,會用來做為命名容器之階層架構的最上層。

範例

下列範例顯示 Label 控件中包含的 ListView 控制項。 在控件上ListViewClientIDMode,屬性會設定為 Predictable,而 ClientIDRowSuffix 屬性會設定為 ProductID。 從用戶端文本,您可以根據ProductID您嘗試存取的實例值來存取 的特定實例Label

此範例會建立具有三 ProductIDLabel 個控件的 HTML。 當頁面執行時,控件的標識符會是下列各項:

  • ListView1_ProductIDLabel_1
  • ListView1_ProductIDLabel_34
  • ListView1_ProductIDLabel_43
<asp:XmlDataSource ID="XmlDataSource1" runat="server" 
                   XPath="Products/Product">
  <Data>
    <Products>
      <Product ProductID="1"  ProductName="Chai" />
      <Product ProductID="34" ProductName="Ale" />
      <Product ProductID="43" ProductName="Coffee" />
    </Products>
  </Data>
</asp:XmlDataSource>

<asp:ListView ID="ListView1" 
              ClientIDMode="Predictable" 
              ClientIDRowSuffix="ProductID"  
              DataSourceID="XmlDataSource1" runat="server" >
  <ItemTemplate>
    ProductID: 
    <asp:Label ID="ProductIDLabel" runat="server" 
               Text='<%# Eval("ProductID") %>' />
    <br />
    ProductName:
    <asp:Label ID="ProductNameLabel" runat="server" 
               Text='<%# Eval("ProductName") %>' />
    <br />
    <br />
  </ItemTemplate>

  <LayoutTemplate>
    <div ID="itemPlaceholderContainer" runat="server">
      <span ID="itemPlaceholder" runat="server" />
    </div>
    <div>
    </div>
  </LayoutTemplate>
  
</asp:ListView>

備註

當您設定 ClientIDMode 控件的 屬性時,ClientIDMode會使用 列舉。 您指派給 ClientIDMode 屬性的值會決定屬性的產生方式 ClientID 。 屬性的值 ClientID 會轉譯為 id 標記中的屬性,而它是您用來從用戶端腳本存取控件的值。 您指派給 ClientIDMode 屬性的值不會影響伺服器控件的 屬性,只會id影響ID對應 HTML 元素的 屬性。

頁面的 ClientIDMode 預設值為 Predictable。 控件的 ClientIDMode 預設值為 Inherit。

由於控件的預設值為 [繼承],因此預設產生模式為 [可預測]。 不過, (,如果您使用Visual Studio將Web專案轉換成舊版的 ASP.NET 4,Visual Studio 會自動將網站預設設定為 Web.config file.)

您可以藉由在網站的 Web.config 檔案中設定 pages 元素,來設定ClientIDMode網站中所有頁面的值。 您可以在 @ Page 指示詞中設定ClientIDMode頁面的值。

如需詳細資訊,請參閱 ASP.NET 網頁伺服器控制項識別

適用於

另請參閱