La manera más fácil que he encontrado es simplemente coincidir en el extremo de la identificación destrozada para la mayoría de los controles. Las excepciones que se conocen son listas de botones de radio y listas de casillas de verificación: tiene que ser un poco más complicado con ellos.
Pero si usted tiene esto en su página .aspx:
<asp:TextBox ID="txtExample" runat="server" />
Luego, su jQuery puede encontrar fácilmente que el control, incluso si está destrozado por la página maestra de representación, así:
$("[id$=txtExample]")
El operador $=
coincide con el final de la cadena y el cambio de nombre siempre está en la parte frontal. Una vez que hayas hecho esto, se puede obtener el ID destrozado real como esto:
$("[id$=txtExample]").attr("id")
y luego procesarla y de todos modos le parezca.
EDIT: Esta es una manera fácil, pero puede ser más un golpe de rendimiento que simplemente darle a cada control una clase igual a su ID anterior.
ver este artículo que Jeff publicó un enlace a otro en cuestión de optimización de jQuery:
jQuery: Performance Analysis of Selectors
Supongo que te refieres a formularios web, no a winforms? – splattne
sí webforms, mybad. – Blankman