Quiero validar un formulario, tengo que validar los campos de texto, los cuales si los consigo validar, y tambien el telefono y el correo electronico que son los que me estan dando problemas.
He leido que con expresiones regulares se puede hacer, lo he intentado pero no consigo que valide (es obvio que no se usarlas).
Aqui os dejo el HTML:
Código HTML:
<form name="formulario" method="get"> <fieldset> <legend>Datos personales</legend> Nombre: <br /> <input type="text" name="name" /> <br /> Apellidos: <br /> <input type="text" name="apellidos" /> <br /> Dirección: <br /> <input type="text" name="direccion" /> <br /> Teléfono: <br /> <input type="text" name="telefono" /> <br /> E-mail: <br /> <input type="text" name="email" /> </fieldset> <fieldset> <legend>Datos de la compra</legend> Patatas: <input type="checkbox" name="patatas" /> (3€/Kg) <br /> ¿Cuantos kilos de patatas desea? <br /> <input type="text" name="kpatatas" /> <br /> Melones: <input type="checkbox" name="melones" /> (2€/Kg) <br /> ¿Cuantos kilos de melones desea? <br /> <input type="text" name="kmelones" /> <br /> Sandias: <input type="checkbox" name="sandias" /> (1€/Kg) <br /> ¿Cuantos kilos de sandias desea? <br /> <input type="text" name="ksandias" /> </fieldset> <input type="button" name="calcular" value="Calcular Total" /> <input type="button" name="comprar" value="Comprar" onclick="comprobar_personal()" /> </form>
Código:
Saludos, y gracias de antemano. function comprobar_personal (){ var ok; ok = true; if (formulario.name.value==""){ alert ("Debe escribir su nombre"); formulario.name.focus(); ok=false; } else if (formulario.apellidos.value==""){ alert ("Debe escribir sus apellidos"); formulario.apellidos.focus(); ok=false; } else if (formulario.direccion.value==""){ alert ("Debe escribir su direccion postal"); formulario.direccion.focus(); ok=false; } else if (formulario.telefono.value==^[0-9]{2,3}-? ?[0-9]{6,7}$){ alert ("Debe escribir su numero de telefono"); formulario.telefono.focus(); ok=false; } }