JavaScript - validar formulario dependiendo del boton

   
Vista:

validar formulario dependiendo del boton

Publicado por roberto (1 intervención) el 14/07/2010 22:37:30
Hola:
Tengo un problema con un formulario, en el que hay 3 botones, insertar, eliminar y buscar, dependiendo de en cual de ellos se haga click, debe hacer validaciones distintas, por ejemplo en insertar debe ver que el campo dni y nombre existan, y en buscar solo es obligatorio el dni.

los botones estan declarados de la siguiente forma:

<input type="submit" name="bt_insertar" id="bt_insertar" value="Insertar" onClick="return validar('insertar');"/>
<input type="submit" name="bt_buscar" id="bt_buscar" value="Buscar" onClick="return validar('buscar');"/>
<input type="submit" name="bt_eliminar" id="bt_eliminar" value="Eliminar" onClick="return validar('eliminar');"/>

y la funcion validar la siguiente, solo tengo echa la validacion de insertar y no me funciona inserta aunque no esten los campos

function validar(boton)
{
var validado = true;
//según sea el botón que se ha pulsado
switch (boton)
{
case "insertar":
if((form1.et_dni="")||(form1.et_nombre="")){
alert("Debe insertar dni y nombre");
validado=false;
break;
}
else
form1.submit="clientes.php";
case "buscar":
form1.submit="buscarclientes.php"
break;
case "eliminar":
form1.submit="eliminarclientes.php"
break;
}
return validado;
}
</script>

La insercion la hace correctamente, pero no me valida el formulario.
Espero que alguien me pueda echar una mano. Creo que el problema debe estar en el onclick de los botones, porque me parece que no entra nunca en la funcion validar.
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de ScriptShow

RE:validar formulario dependiendo del boton

Publicado por ScriptShow (387 intervenciones) el 15/07/2010 20:03:10
  • ScriptShow se encuentra ahora conectado en el
  • chat de PHP
Saludos Roberto,

veamos una opción lógica:

<script>
function validar(boton)
{
if(document.form1.et_dni.value=="" || document.form1.et_nombre.value==""){
alert("Debe insertar dni y nombre");
return false;
}
else {
if(boton=="insertar")document.form1.action="clientes.php";
if(boton=="buscar")document.form1.action="buscarclientes.php";
if(boton=="eliminar")document.form1.action="eliminarclientes.php";
document.form1.submit();
return true;
}
}
</script>

Se trata de un ejemplo básico; puedes ampliarlo, adaptarlo a tus necesidades. Si existe, elimina el ACTION en la etiqueta del FORM, evitarás algún fallo. Prueba a ver.

Espero sea útil.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar