Validación de formularios con HTML5 y JavaScript

Documentos relacionados
Validación con Expresiones Regulares

Introducción al desarrollo web (idesweb)

A continuación el código del formulario Registro.html y del archivo validar.js de javascript:

JAVASCRIPT VALIDAR CAMPO TEXTO NO VACÍO. QUE VALOR SEA NUMÉRICO. O CORREO ELECTRÓNICO EN FORMULARIOS. EJEMPLOS (CU01182E)

GUÍA DE TRABAJO N 4 - DESARROLLO WEB Educación Media Fortalecida SED/SENA Ing. Néstor Raúl Suarez Perpiñan Página 1 de 8

Manejo de eventos en JavaScript WEB-TECHNOLOGIES

GUÍA N 5 PROGRAMACIÓN WEB - GRADO 11. Ing. Néstor Raúl Suarez Perpiñan Página 1 de 10

Localizar direcciones en Google Maps con PHP

SERVICIO B2BCONECTA DE FACTURACIÓN INTEGRAL DEL GRUPO RENFE MANUAL DE USUARIO CLIENTE RECEPTOR DE FACTURA ELECTRÓNICA

FORMULARIOS JAVASCRIPT: EJEMPLOS DE DOCUMENT.FORMS Y ELEMENTS. ACCESO DIRECTO A FORMULARIOS Y CAMPOS CON ID Y NAME (CU01175E)

Tutorial de enlace entre Formulario Web y Servicio Web REST. Programación en Internet

VENTANILLA TELEMÁTICA

IF ELSE, IF ELSE IF JAVASCRIPT. CONDICIONALES DEL FLUJO O ESTRUCTURAS DE DECISIÓN. EJEMPLOS. EJERCICIOS. (CU01119E)

Ejemplos prácticos de JavaScript sin utilizar jquery

2- Formularios y JavaScript Course: Developing web- based applica=ons

SWITCH JAVASCRIPT. SELECCIÓN ENTRE ALTERNATIVAS. DIAGRAMA DE FLUJO Y EJEMPLO DE APLICACIÓN. (CU01120E)

MANUAL DE USUARIO Formularios de Adquisición de Material Bibliográfico

HTML Dinámico: Procesado de Formularios - Validación en Cliente -

Instrucciones para la utilización del Servicio de Verificación de Integridad de Documentos

Desarrollo de Aplicaciones Web con PHP. Javier Enciso

Manual de usuario Recepción Facturas y validador SAT. Validador WEB

Formularios en HTML 03/02/2017. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos

Manual de Usuario. Sistema de Inscripción y Consulta en Línea NETVALLE. Sistema de Inscripción y Consulta en Línea

JAVASCRIPT: ACCEDER A ELEMENTOS POR ID. GETELEMENTBYID. DOCUMENT.ALL. CAMBIAR IMAGEN IMG SRC (CU01127E)

GLOBALIA. Sistemas y Comunicaciones PRESENTACIÓN DE LA NUEVA VERSIÓN DEL PORTAL. PROYECTO : Portal del Empleado

Ejercicio: Mensajes Alert, Confirm y Prompt

Formularios en HTML 09/02/2015. Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos

Manual de Usuario de Autoriza

Unidad Técnicas para generar formularios, validarlos y procesarlos en el mismo documento web. J.J.

Manual de ajax en español By ajaxman Usando ajax mediante el método get para realizar peticiones de manera transparente

Cómo poner una marca de agua a las imágenes con PHP

Formularios en HTML. Grupo de Ingeniería del Software. Departamento de Lenguajes y Sistemas Informáticos. October 11

Grupo de Ingeniería del Software. Conceptos básicos de formularios HTML

1. Haz que se muestre una pantalla de alerta con tu nombre. 2. Repite el ejercicio anterior pero usando una variable para guardar tu nombre

XMLHTTPREQUEST AJAX: MÉTODOS OPEN, SEND, GETRESPONSEHEADER, SETREQUESTHEADER (CU01209F)

El programa en JavaScript debe ir encerrado entre la marca script e inicializada la propiedad type con la cadena text/javascript:

Configuración de cuentas Básicas POP3 en Outlook 2007

Módulo Catálogo Virtual -Biblioteca IGP Instructivo de uso

Gestión de formularios: Manual de usuario

MANUAL DE USUARIO PARA LA CLAVE MUNICIPAL VIRTUAL PARA LA DECLARACIÓN JURADA DE PATENTES RÉGIMEN SIMPLIFICADO Y TRADICIONAL PARA EL PERIODO 2017.

Desarrollo Web con PHP

Manual de Usuario Perfil Participante

JavaScript toma su sintaxis de los lenguajes de programación más conocidos, fundamentalmente C/C++, aunque también algo de Pascal.

Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación. JSON Schema. Author: Gerardo Rossel

DISEÑO WEB AVANZADO CON HTML 5 Y CSS3

2. CÓMO BUSCAR EN DIALNET

MANUAL PARA LA ACTIVACIÓN DE CUENTAS DE USUARIO V1.0

SUBSISTEMA DE CARGA DE FICHEROS CON DATOS DE ADEUDOS, RECHAZOS Y DEVOLUCIONES. SEPA Y SEPAXML. Carga de Ficheros

SOLUCION EJERCICIOS VALIDACION DE FORMULARIOS

DISEÑO WEB AVANZADO CON HTML5 Y CSS3 MODALIDAD TELEFORMACIÓN HORAS: 40

SISTEMA DE INFORMACIÓN DEL CENTRO COORDINADOR DE CEICS

Guía herramienta de personalización de comercios

ADDEVENTLISTENER JAVASCRIPT. REMOVE. ATTACHEVENT. THIS EN EVENTOS. PROPAGACIÓN. BUBBLING. CAPTURA. (CU01158E)

MANUAL PARA LA CONFECCIÓN DEL AUTOBAREMO DE MÉRITOS PARA EL CONCURSO-OPOSICIÓN (OEP )

MANUAL DE SOLICITUD MASIVA DE CERTIFICADOS

Node.JS Raspberry Pi (RPi) 2015/05/08 Juan V. Capella

REA Registro de Empresas Acreditadas en el Sector de la Construcción Guía de configuración previa

Aplicaciones Web Mg. Abril Saire Peralta

Manual configuración aplicaciones

Formularios HTML. Desarrollo de Aplicaciones Web Departamento Informática y Sistemas Universidad de Murcia Curso 2013/2014

SERVICIOS EN LÍNEA RECUPERACIÓN DE CLAVE

Práctica 4: Mi agenda personal

Grupo de Ingeniería del Software. Validación con Expresiones Regulares en JavaScript. Qué es una expresión regular?

hipervinculos La página que rescata el valor pasado como parámetro es la siguiente: <html> <head> <title>problema</title> </head> <body> <?

TUTORIAL FIRMADOR WEB Versión 2.0

Introducción a JavaScript y DOM DISERTANTE ING. RASJIDO, JOSE ALBERTO

Manual de usuario. Despierta al Marketing

TUTORIAL SOBRE EXPRESIONES REGULARES EN JAVASCRIPT PARA VALIDACIÓN DE CAMPOS EN FORMULARIOS HTML:

Transcripción:

Validación de formularios con HTML5 y JavaScript

Validación básica de formularios con HTML5 Podemos realizar validaciones básicas empleando HTML5. Es Importante verificar que el elemento empleado funciona en todos los navegadores. Por ejemplo, si queremos emplear el objeto <input type= week > hay que tener en cuenta que no está soportado en Firefox ni IE12 o versiones anteriores. (https://www.w3schools.com/jsref/dom_obj_week.asp) Hay atributos generales que podemos utilizar_ Establecer un campo como obligatorio <input type= text id= nombre required> Limitar el tamaño de caracteres permitido en un elemento <input type= text id= nombre maxlength= 15 >

Validación básica de formularios con HTML5 Establecer valor máximo y mínimo. En campos de tipo Number, no es posible emplear patrones, pero si podemos hacer uso de los atributos min y max. <input type= number id= edad min=18 max=65> Establecer un patrón (expresión regular) que el valor del campo debe cumplir. Validación de un campo texto empleando el atributo pattern: <input type= text id= nombre maxlength= 15 pattern= [A-za-z]{2,15 title= Introduce entre 2 y 15 letras > Validación de campo teléfono empleando el atributo pattern: <input type= text id= telefono maxlength= 9 pattern= [0-9]{9 title= Número de 9 cifras >

Validación básica con JavaScript El primer paso es recuperar el formulario Var formulario = document.getelementbyid( Miformulario ) (o empleando la opción de recuperación qu e más nos interese) Seleccionar los elementos (campos) del formulario. Tenemos varias opciones getelementbyid, getelementsbytagname, etc, getelementsbyname (p.ej con type Radio), etc..

Validación básica con JavaScript Añadir código.js en fichero independiente Establecer manejador de evento load para asegurarnos de que todas los elementos html han sido cargados. Window.addEventListener( load,iniciar); Iniciar añade un manejador de eventos para el botón del formulario Enviar, encargado de enviar los datos del mismo al servidor function iniciar(){ document.getelementbyid( Enviar ).addeventli stener( click,validar,false); //el elemento enviar es el botón que permite enviar el formulario al servidor Validar, será una función que permite comprobar que los campos son válidos Crearemos una función por cada campo a validar. A continuación se muestran tres funciones que validan respectivamente un campo nombre, un campo teléfono y un campo fecha

Validación básica con JavaScript function validarnombre(){ var elem=document.getelementbyid( nombre ); limpiarerror(elem); if(elem.value== ){alert( El campo no puede estar vacío ); error(elem); return false; function validartlfno(){ Var elem=document.getelementbyid( tlfno ); limpiarerror(elem); If (isnan(elem.value) == ){alert( El campo tiene que ser numéricos );error(elem);return false; function validarfecha(){ Var dia=document.getelementbyid( dia ); Var mes=document.getelementbyid( mes ); Var ano=document.getelementbyid( ano ); La funciones error() y limpiarerror() se explican más adelante. Var fecha = new Date(ano, mes, dia); limpiarerror(dia);//mes y año If (isnan(fecha)) { alert( dia mes o año incorrectos ); error(elem); return false;

Validación básica con Javascript Código de la función validar function validar(e){ If (validanombre() && validartlfno() && validarfecha() && confirm ( Pulsa aceptar para enviar el formulario )){ return true, else { e.preventdefault(); //evitamos que el formulario sea enviado a la pagina indicada en action //No se ejecuta la acción por defecto Seria conveniente crear una clase.css para resaltar y mostrar al usuario de una forma clara que campos son errones. Function error(elemento){ Elemento.className= error ; Elemento.focus(); Function limpiarerror(elemento){ Elemento.className = ;

Validación avanzada con JavaScript JavaScript API para validaciones(https://www.w3schools.com/js/js_validation_api.asp) Método Descripción checkvalidity() setcustomvalidity() Propiedad validity validationmessage Devuelve verdadero si un elemento <input> contiene datos básicos. Establece la propiedad mensaje de validación para un elemento <input> Descripción Contiene un valor booleano relativo a la validación de un <input> Contiene el mensaje que el navegador visualizará si la validación es falsa. willvalidate Indica si un elemento <input> será validado La propiedad validity de un elemento input contiene una serie de propiedades (valores booleanos) relacionadas con la validación de datos. He aquí algunas: Propiedad customerror patternmismatch rangeoverflow rangeunderflow toolong valuemissing valid Description verdadero, si un mensaje de validación está establecido Verdadero si el valor de un elemento no coincide con el patrón verdadero, si el valor de un elemento es mayor que el indicado en el atributo max verdadero, si el valor de un elemento es menor que el indicado en su atributo min verdadero, si el valor de un elemento excede maxlength. verdadero, si un elemento que es obligatorio (required) no tiene valor verdadero, si el valor de un elemento es valido

Validación avanzada con JavaScript Elemento.checkValidity() comprueba que la validación del elemento HTML es correcta function validarnombre(){ var elem = document.getelementbyid( nombre ); if (!elem.checkvalidity()){ //si la validación es incorrecta error(elem); return false; function validaredad(){ var elem = document.getelementbyid( edad ); if (!elem.checkvalidity()){ //si la validación es incorrecta error(elem); return false; function validartlfno(){ var elem = document.getelementbyid( telefono ); if (!elem.checkvalidity()){ //si la validación es incorrecta error(elem); return false;

Validación avanzada con JavaScript A continuación añadiimos las funciones validar, error y limpiar error: funcion validar(e){ limpiarerror(); if validarnombre() && validaredad() && validartlfno() && confirm( Deseas enviar el formulario? ){ else { e.preventdefault(); return false; function error(elemento){ document.getelementbyid( mensajeerror.innerhtml = elemento.validationmessage; elemento.classname = error ; elemento.focus(); function limpiarerror(){ //quita todas las clases error de los <input> var formulario=document.forms[0]; for (var i=0; i<.formulario.elements.lentght;i++){ formulario.elements[i].classname= ;

Validación avanzada con JavaScript function validarnombre(){ var elem = document.getelementbyid( nombre ); if (!elem.checkvalidity()){ //validación incorrecta If (elem.validity.valuemissing){ error2(elem, Debe introducir un nombre ); If (elem.validity.patternmismatch){ error2(elem, El nombre debe tener entre 2 y 15 caracteres ); //error(elem); return false; //validarnombre

Validación avanzada con JavaScript function validaredad(){ var elem = document.getelementbyid( edad ); if (!elem.checkvalidity()){ //validación incorrecta if (elem.validity.valuemissing){ error2(elem, Debe introducir un valor ); if (elem.validity.rangeoverflow){ error2(elem, El valor debe ser menor que 65 ); if (elem.validity.rangeunderflow){ error2(elem, El valor debe ser mayor que 18 ); //error(elem); return false;

Validación avanzada con Javascript function validartlfno(){ var elem = document.getelementbyid( telefono ); if (!elem.checkvalidity()){ //validación incorrecta if (elem.validity.valuemissing){ error2(elem, Debe introducir un numero de tlfno ); if (elem.validity.patternmismatch){ error2(elem, El telefono debe tener 9 digitos ); //error(elem); return false; function error2(elem,mensaje){ //visualiza en un parrafo de la pagina el mensaje de error document.getelementbyid( mensajeerror ).innerhtml = mensaje; elem.classname = error ; elem.focus();