Estoy con un problema que no sé bien como resolverlo. A ver si me podéis echar una mano.
El tema es que tengo un formulario que, antes de enviarse, pasa por una función javascript para validar los campos.
El formulario está declarado de la siguiente forma:
Código HTML:
<form id="frmTareaActualizar" name="frmTareaActualizar" method="post" action="consultaTarea.php?id=<?php echo $tarea['idtarea'] ?>" onsubmit="validaDatosActualizar(); return false">
Código:
Cuando le doy a enviar el formulario me aparece el alert "Entro" y me actualiza los datos sin mostrarme ningún alert más.function validaDatosActualizar(){ alert("Entro"); var valorasunto = document.getElementById("asunto").value; var valorestado = document.getElementById("estado").value; var valorfecha = document.getElementById("fechafin").value; alert("Asunto " + valorasunto); alert("Estado " + valorestado); alert("Fecha Fin " + valorfecha); alert("Paso"); if (document.getElementById("asunto").value != ""){ alert(document.getElementById("estado").value); if ((document.getElementById("estado").value == "Abierta") && (document.getElementById("fechafin").value != "")){ alert("El expediente no puede estar abierto y tener la fecha de fin informada"); return false; } else{ alert("Entro al else"); if ((document.getElementById("estado").value == "Cerrada") && (document.getElementById("fechafin").value == "")){ alert("El expediente no puede estar cerrado y tener la fecha de fin sin informar"); return false; } else{ alert("Voy a actualizar"); ActualizarTarea(); return true; } } } else{ alert("Especifique el asunto del expediente."); return false; } }
No debería acutalizar los datos ya que debería fallar en este if:
Código HTML:
if ((document.getElementById("estado").value == "Abierta") && (document.getElementById("fechafin").value != ""))
Código:
son para intentar ver los valores con los que se ejecuta la función, pero no consigo ver nada.var valorasunto = document.getElementById("asunto").value; var valorestado = document.getElementById("estado").value; var valorfecha = document.getElementById("fechafin").value;
Espero que podáis decirme algo.
Muchas gracias a todos.
Un saludo.