¿Alguien sabe cómo deshabilitar un validador de ASP.NET usando JavaScript? Estoy usando JavaScript style.display = 'none' para deshabilitar partes de una página web. Sin embargo, estas partes deshabilitadas tienen validadores de asp.net que todavía están activados y necesito desactivarlos luego sin hacer un viaje de ida y vuelta al servidor. Gracias.Deshabilitar los validadores de ASP.NET con JavaScript
Respuesta
Usar este fragmento:
function doSomething()
{
var myVal = document.getElementById('myValidatorClientID');
ValidatorEnable(myVal, false);
}
Además, en lugar de simplemente elementos escondidos se podía establecer la propiedad visible en false ...
whateverItem.Visible = false;
Esto hace que el tema simplemente no presta a la página, que creo que deshabilita la validación. Alguien por favor corrígeme si estoy equivocado.
Tiene la razón de que no se procesa en la página, pero eso requiere una devolución de datos mientras que Javascript no lo hace. –
no funciona. Incluso si los controles están ocultos, el validador conectado intenta validarlo –
Aquí se detalla artículo sobre cómo controlar ASP.NET validadores de JavaScript:
How to control ASP.NET Validator Controls Client Side validation from JavaScript
Esta es una vieja pregunta, pero sorprendió a la siguiente respuesta no dada. He implementado usando las observaciones anteriores y funciona perfectamente
# enable validation
document.getElementById('<%=mytextbox.ClientID%>').enabled = true
#disable validation
document.getElementById('<%=mytextbox.ClientID%>').enabled = disable
Esta aplicación puede ser difícil porque alguien recordar si hay un error en javascript, el código será salir pero no conseguirá ningún error. Algunos puntos votos
Asegúrese de que se puede establecer un punto de quiebre y puede solo paso a través del código. Si no, reinicia el navegador.
Establezca el punto de interrupción al inicio de la función donde coloca este código. Examine el código, si hay un error, el código se cerrará y no podrá ingresar al código.
En Firefox Firebug, puede escribir la declaración completa de javascript en la pestaña de la consola para ver lo que devuelve su declaración. Lo más importante es que desee verificar valores no nulos de controles.
por Glenn G anterior, yo usaría
myVal.enabled = false;
desactivar el validador en lugar de
ValidatorEnable(myVal, false);
Esto es lo que he experimentado: Ambos fragmentos funcionaban bien en mi servidor 2003 con .net framework 2.0. Sin embargo, en el servidor 2008 R2 con .NET Framework 4.0 (no estoy seguro de cuál es la causa del problema), estaba obteniendo un comportamiento involuntario con "ValidatorEnable". Hay pestañas (controles de usuario) en mi página y cuando salía de la pestaña que llamaba "ValidatorEnable", estaba deshabilitando temporalmente los validadores en la siguiente pestaña (incluso aunque no se llamara al código para deshabilitarlos) hasta la próxima devolución de datos.
La mejor manera de hacerlo así,
function doSomething()
{
var objvalidator = document.getElementById('myValidatorClientID');
objvalidator.enabled = false;
objvalidator.isvalid = true;
ValidatorUpdateDisplay(objvalidator);
}
- 1. Extendiendo validadores ASP.NET
- 2. Acceso a la propiedad inválida de los validadores de ASP.NET en Javascript
- 3. Número de validadores y ClientIDMode (ASP.NET)
- 4. Validadores de ASP.NET dentro de un UpdatePanel
- 5. validadores duplicados
- 6. Habilitar/deshabilitar los controles del validador asp.net dentro de un "ValidationGroup" específico con jQuery?
- 7. ASP.NET Validation Summary: ¿Cómo deshabilitar el validador con JavaScript?
- 8. Deshabilitar desplazamiento horizontal con JavaScript
- 9. Complejidad algorítmica de los analizadores/validadores XML
- 10. ¿Puede obtener una validación de JavaScript personalizada del lado del cliente para los validadores estándar de formularios web de ASP.NET?
- 11. Deshabilitar Caché de ASP.net
- 12. "Deshabilitar" una tabla HTML con Javascript
- 13. ¿Es posible tener validadores con parámetros?
- 14. Deshabilitar caché asp.net
- 15. Postback de ASP.NET con JavaScript
- 16. Deshabilitar todos los controles dentro de div en asp.net
- 17. validadores, confirmación de la contraseña
- 18. Deshabilitar la carga de archivos específicos de JavaScript con Firefox
- 19. Cómo permitir valores vacíos en los validadores de Symfony2
- 20. ¿Dónde deben almacenarse los validadores personalizados de Rails 3?
- 21. ¿Deshabilitar diseño en ASP.NET MVC?
- 22. Deshabilitar JavaScript en iframe/div
- 23. asp.net mvc deshabilitar caché ajax
- 24. raíles 3 validadores e i18n
- 25. ¿Cómo utilizar validadores de anotación de datos en Winforms?
- 26. Deshabilitar condicionalmente el controlador MVC de ASP.NET
- 27. Deshabilitar ventana emergente de globo de ASP.NET
- 28. Uso de validadores para garantizar que el usuario complete uno de los dos campos obligatorios
- 29. Deshabilitar el doble clic del mouse con javascript o jquery
- 30. ASP.NET con MS Chart deshabilitar la línea vertical
El cara a cara: esto no funcionará para ASP.NET 1.1 con Firefox http: // stackoverflow.com/questions/3640183/disable-asp-net-1-1-validator-using-javascript-not-working-in-firefox – IrishChieftain
Otro problema es que el validador aún está habilitado en el servidor, lo que puede darte una sorpresa al lado postback. – JumpingJezza
Esto activa la validación del lado del cliente. En el fragmento, en lugar de ValidatorEnable, use: myVal.enabled = false; para deshabilitar el validador – GlennG