Tengo un formulario con varios campos de texto y dos botones (Guardar y Cancelar).
Los botones son de tipo input image pq así puedo aplicarles una imagen y un rollover.
Hasta aquí todo correcto, si pulso Guardar guarda un nuevo registro en la bd y si pulso cancelar me devuelve a la página anterior (esto lo hace en otro php). El problema viene cuando quiero validar q los campos de texto no queden vacios. He probado a hacer la validación en el onclick de los botones, pero no me va, no se si por ser input image o q, el caso es q no tira.
La situación ahora mismo es q como el validar está en el onsubmit del formulario, me valida tanto si guarda como si cancela. Entonces, cuando le doy a cancelar (con los campos vacios) no me vuelve hacia atrás sino que me dice q los campos están vacios.
He pensado q una buena opción sería en el onsubmit del formulario, o en la funcion javascript, comprobar que botón he pulsado, pero no se como hacerlo.
Os pongo el código por si alguien se le ocurre algo
Gracias
Código Javascript
Código:
Código Html:<script> function valida_envia() { with(document.fcalen) { if(!titulo.value) { alert('Falta el titulo.'); titulo.focus() return false; } if(!descripcion.value) { alert('Falta la descripción.'); titulo.focus() return false; } } } </script>
Código:
<form name="fcalen" action="<?php echo $archivo ?>" method="post" onSubmit="return valida_envia();"> <table> <tr> <td>Título:<input style="font-size:10px" type="text" name="titulo" value="<?php echo $titulo ?>" size="50" maxlength="50"></td> <td>Descripción:<input style="font-size:10px" type="text" name="descripcion" value="<?php echo $descripcion ?>" size="80" maxlength="150"></td> </tr> <tr> <td><input type="image" name="guardar" src="imagenes/guardar_off.gif" onmouseout="javascript:this.src='imagenes/guardar_off.gif'" onmouseover="javascript:this.src='imagenes/guardar_on.gif'" alt="Guardar" /></td> <td><input type="image" name="cancelar" src="imagenes/cancelar_off.gif" onmouseout="javascript:this.src='imagenes/cancelar_off.gif'" onmouseover="javascript:this.src='imagenes/cancelar_on.gif'" alt="Cancelar" /></td> </tr> <tr> <td><input type=hidden name="id" value="<?php echo $id ?>"></td> </tr> </table> </form>