ClientIDMode Enumeración
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Especifica cómo genera ASP.NET el ClientID para un control al que se puede obtener acceso en un script de cliente.
public enum class ClientIDMode
public enum ClientIDMode
type ClientIDMode =
Public Enum ClientIDMode
- Herencia
Campos
AutoID | 1 | El valor ClientID se genera mediante la concatenación de los valores ID de cada contenedor de nomenclatura primario con el valor ID del control. En escenarios de enlace de datos donde se presentan varias instancias de un control, se inserta un valor de incremento delante del valor ID del control. Un carácter de subrayado (_) separa cada segmento. Este algoritmo es el único que estaba disponible en las versiones anteriores a ASP.NET 4. |
Inherit | 0 | El control hereda la configuración de ClientIDMode de este control NamingContainer. |
Predictable | 2 | Este algoritmo se utiliza para los controles que están en controles enlazados a datos. El valor ClientID se genera mediante la concatenación del valor ClientID del contenedor de nomenclatura primario con el valor ID del control. Si se trata de un control enlazado a datos que genera varias filas, el valor del campo de datos especificado en la propiedad ClientIDRowSuffix se agrega al final. En el caso del control GridView se pueden especificar varios campos de datos. Si la propiedad ClientIDRowSuffix está en blanco, se agrega un número secuencial al final en lugar de un valor de campo de datos. Un carácter de subrayado (_) separa cada segmento. |
Static | 3 | El valor de ClientID se establece en el valor de la propiedad ID. Si el control es un contenedor de nomenclatura, se utiliza como la parte superior de la jerarquía de contenedores de nomenclatura para cualquier control que contenga. |
Ejemplos
En el ejemplo siguiente se muestran Label los controles contenidos en un ListView control . En el ListView control , la ClientIDMode propiedad se establece en Predictable y la ClientIDRowSuffix propiedad se establece ProductID
en . Desde el script de cliente, puede acceder a una instancia determinada de un Label en función del ProductID
valor de la instancia a la que está intentando acceder.
En este ejemplo se crea HTML con tres ProductIDLabel
controles. Cuando se ejecuta la página, los identificadores de los controles serán los siguientes:
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>
Comentarios
La enumeración se usa ClientIDMode al establecer la ClientIDMode propiedad para un control . El valor que se asigna a la ClientIDMode propiedad determina cómo se genera la ClientID propiedad. El valor de la ClientID propiedad se representa como el atributo en el id
marcado y es el valor que se usa para tener acceso al control desde el script de cliente. El valor que se asigna a la ClientIDMode propiedad no afecta a la ID propiedad del control de servidor, solo el id
atributo del elemento HTML correspondiente.
El valor predeterminado de ClientIDMode para una página es Predecible. El valor predeterminado de ClientIDMode para un control es Inherit.
Dado que el valor predeterminado para los controles es Inherit, el modo de generación predeterminado es Predecible. (Sin embargo, si usa Visual Studio para convertir un proyecto web en ASP.NET 4 de una versión anterior, Visual Studio establece automáticamente el valor predeterminado del sitio en AutoID en el archivo Web.config).
Puede establecer el ClientIDMode
valor de todas las páginas de un sitio web estableciendo el elemento pages en el archivo Web.config del sitio. Puede establecer el ClientIDMode
valor de una página en la directiva @ Page .
Para obtener más información, vea Identificación de controles de formularios Web Forms.
Se aplica a
Consulte también
- ClientIDMode
- ClientIDMode
- ClientIDMode
- ClientIDMode
- ClientIDMode
- identificación del control de ASP.NET
- Cómo: Acceder a controles desde JavaScript por identificador
- Tutorial: Facilitar el acceso a los controles de Data-Bound desde JavaScript
- Tutorial: Hacer que los controles ubicados en controles de usuario web sean más fáciles de acceder desde JavaScript