utilizar usar qué que programar programa primer podríamos net llamar funcion forma desde código crear con codebehind asp asp.net jquery controls

usar - ¿Cuál es el mejor método para encontrar un control ASP.Net usando jQuery?



que es codebehind asp net (4)

Al implementar mi primer script significativo utilizando jquery, necesitaba encontrar un control web específico en la página. Como trabajo con DotNetNuke, no se garantiza que los controles sean ClientID, ya que el control del contenedor puede cambiar de un sitio a otro. Terminé usando un selector de atributos que busca una ID que finaliza con la identificación del servidor del control.

$("select[id$=''cboPanes'']")

Parece que podría no ser el mejor método. Hay otra manera de hacer esto?

@Roosteronacid - Mientras recibo los controles que quiero, trato de seguir las expresiones idiomáticas de una tecnología / idioma dado. Cuando programo en C #, trato de hacerlo de la manera que mejor aproveche las características de C #. Como este es mi primer esfuerzo para realmente usar jQuery, y como esto lo utilizarán decenas de miles de usuarios, quiero asegurarme de que estoy creando código que también es un buen ejemplo para otros.

@toohool: eso definitivamente funcionaría, pero desafortunadamente necesito mantener el javascript en archivos separados por razones de rendimiento. Realmente no puede aprovechar el almacenamiento en caché muy bien si incorpora el javascript ya que cada "página" se genera dinámicamente. Terminaría enviando el mismo javascript al cliente una y otra vez simplemente porque otro contenido en la página ha cambiado.

@Roosteronacid - Mientras recibo los controles que quiero, trato de seguir las expresiones idiomáticas de una tecnología / idioma dado. Cuando programo en C #, trato de hacerlo de la manera que mejor aproveche las características de C #. Como este es mi primer esfuerzo para realmente usar jQuery, y como esto lo utilizarán decenas de miles de usuarios, quiero asegurarme de que estoy creando código que también es un buen ejemplo para otros.

@toohool: eso definitivamente funcionaría, pero desafortunadamente necesito mantener el javascript en archivos separados por razones de rendimiento. Realmente no puede aprovechar el almacenamiento en caché muy bien si incorpora el javascript ya que cada "página" se genera dinámicamente. Terminaría enviando el mismo javascript al cliente una y otra vez simplemente porque otro contenido en la página ha cambiado.


Aparte de ser un poco más caro, en cuanto a rendimiento, no puedo ver nada malo con el uso de ese selector. Después de todo; está obteniendo los controles a los que desea acceder.


Use una clase de marcador en el control y selecciónelo a través de jQuery.


$("#<%= cboPanes.ClientID %>")

Esto inyectará dinámicamente la ID DOM del control. Por supuesto, esto significa que su JS debe estar en un archivo ASPX, no en un archivo JS externo.


Una cosa que he hecho en el pasado (en JavaScript no jQuery), en las anteriores mis importaciones de JavaScript, es mostrar los ID de los controles dinámicos de manera similar a lo que toohool recomienda y asignarlos a las variables que hago referencia en las importaciones de mi script.

Algo como esto debería permitirle aprovechar el almacenamiento en caché y aún así permitirle tener los ID de cliente exactos:

<head> <script type="text/javascript> var cboPanesID = <%= cboPanes.ClientID %>; </script> <!-- this JS import references cboPanesID variable declared above --> <script src="jquery.plugin.js"></script> </head>