unidades:08_formularios:02_validaciones
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| unidades:08_formularios:02_validaciones [2014/08/27 20:28] – [email] admin | unidades:08_formularios:02_validaciones [2014/09/16 21:01] (actual) – admin | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| ====== 8.2 Validaciones ====== | ====== 8.2 Validaciones ====== | ||
| - | Acabamos de ver como saber si un campo o formulario es o no válido. En este tema vamos a ver las validaciones estándar que tiene angular dejando para la unidad [[unidades: | + | Acabamos de ver cómo saber si un campo o formulario es o no válido. En este tema vamos a ver las validaciones estándar que tiene angular dejando para la unidad [[unidades: |
| ===== Tipos de Validaciones ===== | ===== Tipos de Validaciones ===== | ||
| AngularJs dispone de 9 tipos de validaciones distintas: | AngularJs dispone de 9 tipos de validaciones distintas: | ||
| - | * '' | + | * '' |
| * '' | * '' | ||
| * '' | * '' | ||
| Línea 14: | Línea 14: | ||
| * '' | * '' | ||
| - | <note warning> | + | <note warning> |
| + | Para que todas estas validaciones funcionen es necesario que tanto el ''< | ||
| - | Pasemos ahora a ver como se aplican cada una de ellas. | + | <sxh html> |
| + | <form name=" | ||
| + | </ | ||
| + | |||
| + | <input name=" | ||
| + | |||
| + | <select name=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Pasemos ahora a ver cómo se aplican cada una de ellas. | ||
| ==== email ==== | ==== email ==== | ||
| Línea 26: | Línea 37: | ||
| ==== max ==== | ==== max ==== | ||
| - | Solo se aplica a ''< | + | Sólo se aplica a ''< |
| - | Deberemos indicar la directiva '' | + | Deberemos indicar la directiva '' |
| <sxh html> | <sxh html> | ||
| Línea 33: | Línea 44: | ||
| </ | </ | ||
| ==== maxlength ==== | ==== maxlength ==== | ||
| - | Solo se aplica a ''< | + | Sólo se aplica a ''< |
| - | Deberemos indicar la directiva '' | + | Deberemos indicar la directiva '' |
| <sxh html> | <sxh html> | ||
| Línea 41: | Línea 52: | ||
| ==== min ==== | ==== min ==== | ||
| - | Solo se aplica a ''< | + | Sólo se aplica a ''< |
| - | Deberemos indicar la directiva '' | + | Deberemos indicar la directiva '' |
| <sxh html> | <sxh html> | ||
| Línea 49: | Línea 60: | ||
| </ | </ | ||
| ==== minlength ==== | ==== minlength ==== | ||
| - | Solo se aplica a ''< | + | Sólo se aplica a ''< |
| - | Deberemos indicar la directiva '' | + | Deberemos indicar la directiva '' |
| <sxh html> | <sxh html> | ||
| Línea 64: | Línea 75: | ||
| ==== pattern ==== | ==== pattern ==== | ||
| - | Solo se aplica a ''< | + | Sólo se aplica a ''< |
| - | Deberemos indicar la directiva '' | + | Deberemos indicar la directiva '' |
| <sxh html> | <sxh html> | ||
| Línea 77: | Línea 88: | ||
| </ | </ | ||
| - | Esta directiva permite que la expresión regular esté en una propiedad del '' | + | Esta directiva permite que la expresión regular esté en una propiedad del '' |
| <sxh html> | <sxh html> | ||
| Línea 89: | Línea 100: | ||
| ==== required ==== | ==== required ==== | ||
| - | Se aplica a cualquier ''< | + | Se aplica a cualquier ''< |
| Se debe poner la directiva '' | Se debe poner la directiva '' | ||
| Línea 103: | Línea 114: | ||
| </ | </ | ||
| - | Es este segundo ejemplo deberíamos tener en el '' | + | En este segundo ejemplo |
| <sxh js> | <sxh js> | ||
| $scope.requeridoNombre=true | $scope.requeridoNombre=true | ||
| </ | </ | ||
| - | o para que no lo fuera: | + | |
| + | y para que **no** fuera requerido '' | ||
| <sxh js> | <sxh js> | ||
| $scope.requeridoNombre=false | $scope.requeridoNombre=false | ||
| Línea 119: | Línea 131: | ||
| </ | </ | ||
| + | ===== Comprobando las validaciones ===== | ||
| + | Ahora que ya sabemos cómo poner las validaciones falta saber si una validación ha fallado. Hay dos formas de saberlo: | ||
| + | * Sobre un campo | ||
| + | * Sobre un tipo de validación | ||
| + | |||
| + | ==== Sobre un campo ==== | ||
| + | Si sabemos un campo, podemos averiguar las validaciones que ha fallado. Para explicarlo vamos a hacerlo con unos ejemplos: | ||
| + | |||
| + | === Ejemplo 1 === | ||
| + | |||
| + | Si queremos saber si ha fallado la validación '' | ||
| + | <sxh js> | ||
| + | $scope.miFormulario.nombre.$error.required | ||
| + | </ | ||
| + | |||
| + | * Si vale '' | ||
| + | * Si vale '' | ||
| + | * Si vale '' | ||
| + | |||
| + | === Ejemplo 2 === | ||
| + | Si queremos saber si ha fallado la validación '' | ||
| + | <sxh js> | ||
| + | $scope.miFormulario.correo.$error.email | ||
| + | </ | ||
| + | |||
| + | * Si vale '' | ||
| + | * Si vale '' | ||
| + | * Si vale '' | ||
| + | |||
| + | Lo que nos retorna la expresión '' | ||
| + | |||
| + | <note tip> | ||
| + | |||
| + | ==== Sobre un tipo de validación ==== | ||
| + | Dado un tipo de validación podemos saber cuántos campos no cumplen esa validación.Para explicarlo vamos a hacerlo con unos ejemplos: | ||
| + | |||
| + | === Ejemplo 1 === | ||
| + | Si queremos saber cuántos campos han fallado la validación de '' | ||
| + | <sxh js> | ||
| + | $scope.miFormulario.$error.required | ||
| + | </ | ||
| + | El resultado es esta expresión | ||
| + | |||
| + | * Si vale '' | ||
| + | * Si vale un array. El contenido del array son objetos de la clase [[https:// | ||
| + | * Si vale '' | ||
| + | |||
| + | === Ejemplo 2 === | ||
| + | Si queremos saber cuántos campos han fallado la validación de '' | ||
| + | <sxh js> | ||
| + | $scope.miFormulario.$error.email | ||
| + | </ | ||
| + | El resultado es esta expresión | ||
| + | |||
| + | * Si vale '' | ||
| + | * Si vale un array. El contenido del array son objetos de la clase [[https:// | ||
| + | * Si vale '' | ||
| + | |||
| + | <note tip> | ||
| + | |||
| + | ===== novalidate ===== | ||
| + | Lo último que nos queda por contar es el atributo '' | ||
| + | |||
| + | Este atributo se pone para evitar que el propio navegador se ponga a hacer sus propias validaciones con sus propios mensajes o estilos CSS y que choquen con las que está haciendo AngularJS. | ||
| + | |||
| + | <sxh html> | ||
| + | <form name=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <note important> | ||
| + | Recuerda poner el atributo '' | ||
| + | </ | ||
| ===== Ejemplo ===== | ===== Ejemplo ===== | ||
| Línea 124: | Línea 209: | ||
| ===== Referencias ===== | ===== Referencias ===== | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
unidades/08_formularios/02_validaciones.1409164088.txt.gz · Última modificación: por admin
