¿Cómo puedo combinar JQuery con el modelo de validación del lado del cliente de ASP.NET?Manera elegante de combinar la validación de ASP.NET con JQuery
En general, he evitado la implementación del modelo de validación de ASP.NET porque siempre parece exagerado para lo que estaba haciendo. Para el sitio en el que estoy trabajando ahora solo estoy recopilando datos de usuarios no críticos y solo necesito una validación algo básica. No quiero que aparezcan mensajes en el DOM ni nada de eso. Siempre me ha resultado difícil lograr que se vea bien de todos modos.
Pero ahora necesito implementar algo un poco más elegante. Lo que quiero aprovechar en JQuery son expresiones de búsqueda inteligentes como 'dime si al menos una de estas casillas de verificación está marcada'. Soy nuevo en JQuery, pero creo que se trata de 1 línea de JQuery y mucho más complicada en el modelo ASP.NET tradicional.
Por lo tanto, quiero aprovechar al máximo las capacidades de JQuery pero no eliminar por completo el modelo de validación de ASP.NET.
Mi mejor enfoque hasta ahora es esto (que prácticamente va a espaldas de ASP.NET):
$('#<%=btnJoinMailingList.ClientID %>').bind('click', function(event) {
if (...) {
alert("You must enter a name");
return false;
}
return true;
});
¿Qué es un enfoque mejor aquí? ¿Hay algún complemento recomendado para JQuery?
PS. No quiero usar el modelo MVC. Intento crear un sitio muy 'RAD' y no tengo tiempo para profundizar en esas cosas nuevas y divertidas.
Nota: No creo que acaban de volver verdadero o falso va a trabajar - tiene que aceptar 2 params a la función (remitente, args) y establecer argumentos.IsValid = ok; al final para jugar bien con el marco de validación de formularios web. – chris
@chris - Muy cierto - Sé que es mejor saberlo. ¡Sabes qué, actualizaré la respuesta! – Kobi
@chris - ¡Hecho! En mi defensa, recuerdo vagamente que devolver el verdadero o falso funcionó para mí, pero este es el método oficial y definitivamente es mejor (espero no haber recomendado nada estúpido, ¡esta pregunta tiene 5700 visitas!). Gracias. – Kobi