Perdón por molestar con esta tontería, pero hoy me siento incapaz de sacar esto adelante... me he bloqueado :(
Tengo un formulario en el que compruebo sin problemas el nombre, los apellidos, y la dirección de correo. Todos estos campos son obligatorios y la comprobación funciona bien, pero también quiero dejar como opcional la introducción del número de móvil y es aquí donde me salen los problemas. No consigo poner que el campo sea opcional pero que sólo permita introducir números.
Además tengo 3 radio buttons que tampoco se como hacer para que sea obligatorio seleccionar uno. ¿Podría alguien ayudarme?
Muchas gracias a todos y feliz navidad
Os adjunto el código que he utilizado
Código PHP:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script language="JavaScript">
<!--
function reponse(myoption) {
var count = myoption.length;
for (var i = 0; i < count; i++) {
if (myoption[i].checked == true) {
return myoption[i].value;
}
}
return "";
}
function IsNumeric(variable)
{
var reg = new RegExp("^[0-9 ]*$","g");
if (!reg.test(variable)) return false;
else return true;
}
function IsPlaintext(variable)
{
var reg = new RegExp("^[a-zA-Z ]*$","g");
if (!reg.test(variable)) return false;
else return true;
}
function match(expression, value) {
return expression.test(value);
}
function IsTelephone(value) {
return match(/^[0-9]{9}$/, value);
}
/////////////////////////////////
// FUNCION VALIDACION //
/////////////////////////////////
function validation(formWC) {
if (formWC.NOMBRE.value == "") {
alert ("Debe rellenar el apartado relativo al Nombre");
formWC.NOMBRE.focus();
return false;
}
if(!(IsPlaintext(formWC.NOMBRE.value)))
{
alert ("No ha rellenado correctamente los datos relativos a su Nombre. Introduzca únicamente letras.");
formWC.NOMBRE.focus();
return false;
}
if (formWC.APELLIDOS.value == "") {
alert ("Debe rellenar el apartado relativo al apellido");
formWC.APELLIDOS.focus();
return false;
}
if(!(IsPlaintext(formWC.APELLIDOS.value)))
{
alert ("No ha rellenado correctamente los datos relativos a su Apellido. Introduzca únicamente letras.");
formWC.APELLIDOS.focus();
return false;
}
if (formWC.EMAIL.value == "") {
alert ("Debe rellenar el campo relativo al E-mail");
formWC.EMAIL.focus();
return false;
}
//comprobar el valor del e-mail
var reg = new RegExp("^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-.]?[0-9a-zA-Z])*\\.[a-zA-Z]{2,3}$");
if (!reg.test(formWC.EMAIL.value)) {
formWC.EMAIL.focus();
alert("La dirección de E-mail que Vd ha introducido no es válida");
return false;
}
if(!(IsTelephone(formWC.MOVIL.value))) {
alert ("No ha rellenado correctamente los datos relativos a su teléfono. Introduzca únicamente las cifras, sin espacios ni separaciones");
formWC.MOVIL.focus();
return false;
}
return true;
}
//-->
</script>
</head>
<body>
<form action="#" name="formWC" method="POST" enctype="" onsubmit="return validation(document.forms[0])">
<p>NOMBRE
<label>
<input name="NOMBRE" type="text" id="NOMBRE" />
</label>
<p>APELLIDOS
<input name="APELLIDOS" type="text" id="APELLIDOS" />
</p>
<p>EMAIL
<input name="EMAIL" type="text" id="EMAIL" />
</p>
<p>MOVIL
<input name="MOVIL" type="text" id="MOVIL" />
</p>
<p>
<label>
<input name="PRODUCTO" type="radio" value="1" />
1</label>
<label>
<input name="PRODUCTO" type="radio" value="2" />
2</label>
<label>
<input name="PRODUCTO" type="radio" value="3" />
3</label>
</p>
<p>
<input name="Submit" type="submit" value="Submit" />
</p>
</form>
</body>
</html>