Haber os comento.
Tengo hecho un formulario en php y con algo de javascript, os copia parte de él:
Código:
<form name='formulario' id='formulario' method='post' action='confirmacion.php' target='_self' enctype="multipart/form-data" onSubmit="return validar(this)"> <div align="center"> <p class="Estilo10"> <label> <script language="JavaScript"> function validar(form) { //verifica que haya llenado los campos if (es_cliente == no) { if (!form.Empresa.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Persona_de_contacto.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Actividad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.CIF_NIF.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Codigo_Postal.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Ciudad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Domicilio.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Telefono.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.email.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Cantidad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Numero_de_tintas_de_impresion.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Fecha_de_entrega_preferida.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else { return true } } } else { if (es_cliente == si) { if (!form.Empresa.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Persona_de_contacto.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.email.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Cantidad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Numero_de_tintas_de_impresion.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Fecha_de_entrega_preferida.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else { return true ) </script> <div align="center"> <table width="445" border="0" cellspacing="0" cellpadding="0"> <!--DWLayoutTable--> <tr> <td height="19" colspan="3" valign="top"><div align="left"> <span class="Estilo14"><span class="Estilo12"><span class="Estilo17"> <input name="asunto" type="hidden" id="asunto" value="Presupuesto personalizado de: "Caja de caramelos CLIK-CLAK"" /> </span></span> <label><span class="Estilo12"><span class="Estilo17"> </span></span> </label> <div align="right"><span class="Estilo12"><em><strong> <div align="center">Seleccione solo una opción para habilitar los campos que le corresponda rellenar:</div> </strong></em></span></div> <span class="Estilo12"></span><span class="Estilo12"><span class="Estilo17"> </span></span> <label></label> <div align="center"> <div align="center"> <span class="Estilo2 Estilo24"> <input name="es_cliente" type="checkbox" value="si" onClick="document.formulario.Empresa.disabled=!document.formulario.Empresa.disabled; document.formulario.Persona_de_contacto.disabled=!document.formulario.Persona_de_contacto.disabled; document.formulario.email.disabled=!document.formulario.email.disabled; document.formulario.Cantidad.disabled=!document.formulario.Cantidad.disabled; document.formulario.Numero_de_tintas_de_impresion.disabled=!document.formulario.Numero_de_tintas_de_impresion.disabled; document.formulario.Fecha_de_entrega_preferida.disabled=!document.formulario.Fecha_de_entrega_preferida.disabled; document.formulario.archivo1.disabled=!document.formulario.archivo1.disabled"/> Si, soy cliente </span></div> <span class="Estilo2 Estilo24"> <label> </label> <label></label> <label></label> </span> <span class="Estilo24"><label></label><label></label></span><label><div align="center"> <span class="Estilo2 Estilo24"> <input name="es_cliente" type="checkbox" value="no" onClick="document.formulario.Empresa.disabled=!document.formulario.Empresa.disabled; document.formulario.Persona_de_contacto.disabled=!document.formulario.Persona_de_contacto.disabled; document.formulario.Actividad.disabled=!document.formulario.Actividad.disabled; document.formulario.CIF_NIF.disabled=!document.formulario.CIF_NIF.disabled; document.formulario.Domicilio.disabled=!document.formulario.Domicilio.disabled; document.formulario.Codigo_Postal.disabled=!document.formulario.Codigo_Postal.disabled; document.formulario.Ciudad.disabled=!document.formulario.Ciudad.disabled; document.formulario.Telefono.disabled=!document.formulario.Telefono.disabled; document.formulario.email.disabled=!document.formulario.email.disabled; document.formulario.Cantidad.disabled=!document.formulario.Cantidad.disabled; document.formulario.Numero_de_tintas_de_impresion.disabled=!document.formulario.Numero_de_tintas_de_impresion.disabled; document.formulario.Fecha_de_entrega_preferida.disabled=!document.formulario.Fecha_de_entrega_preferida.disabled; document.formulario.archivo1.disabled=!document.formulario.archivo1.disabled"/>
Los checkbox lo que hacen es que si hago click en uno, habilito una serie de campos,y si hago click en otro habito otros.Hasta ahí todo bien. El problema viene cuando quiero validar que los campos no esten vacios; cuando lo hago con todos me funciona bien, pero al decirle que si el boton es_cliente es igual a si valide unos campos y si el boton es igual a no valide otros, no me valida nada... no si que tengo mal, porque aparentemente la sentencia esta bien, supongo que sera al decirle que es igual..
Código:
Si alguien puede ayudarme, en esta sentencia, se lo agradeceria mucho.<script language="JavaScript"> function validar(form) { //verifica que haya llenado los campos if (es_cliente == no) { if (!form.Empresa.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Persona_de_contacto.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Actividad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.CIF_NIF.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Codigo_Postal.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Ciudad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Domicilio.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Telefono.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.email.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Cantidad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Numero_de_tintas_de_impresion.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Fecha_de_entrega_preferida.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else { return true } } } else { if (es_cliente == si) { if (!form.Empresa.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Persona_de_contacto.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.email.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Cantidad.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Numero_de_tintas_de_impresion.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else if (!form.Fecha_de_entrega_preferida.value) { alert("¡Debe completar todos los campos obligatorios!"); return (false) } else { return true ) </script>
Saludos, y gracias por adelantado.