Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/10/2010, 08:59
Avatar de _cronos2
_cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 14 años, 5 meses
Puntos: 310
Respuesta: Problemas al validar formulario confirm

Cita:
Iniciado por Jokuto Ver Mensaje
Usa la metodologia de html mejor tal que asi:
<form action='loqsea' method='loquesea' onsubmit='return(valida_eniva)'>
..............
.................
..............
<input type='submit' value='enivar'/>
</form>


function valida_envia(){
//valido el numero entrante/saliente
if (document.form.nnnn.value.length==0){
alert("Tiene que escribir el número entrante o saliente de la llamada")
document.form.nnnn.focus()
return false;
}

//valido el id de llamada no vacío
if (document.form.id.selectedIndex==0){
var res = confirm("¿Es correcto id llamada en blanco?");
if(res=true)
return true
else
return false

}

}
Bueno, no es exactamente así. Tienes razón en enviar el form con un submit, pero es return valida_envia() . Después, en la función, si te das cuenta estás asignando el valor true a res, y no comparando. Por tanto, sería ==. Pero para que un if se ejecute, la condición debe ser true, por tanto no hace falta poner ==true, vale con poner if(res) . Luego, si res es true devolvemos true, y si es false, devolemos false, por tanto devolvemos res, o sea que podemos poner perfectamente return res . Pero si hemos llegado hasta ahí, ¿para qué queremos el confirm en una variable? Ponemos directamente return confirm("¿Es correcto id llamada en blanco?") . Voy a poner esto paso por paso:
Código Javascript:
Ver original
  1. //Paso 1
  2. if (document.form.id.selectedIndex==0){
  3.  var res = confirm("¿Es correcto id llamada en blanco?");
  4.  if(res==true)
  5.   return true
  6.  else
  7.   return false
  8. }    
  9. //Paso 2
  10. if (document.form.id.selectedIndex==0){
  11.  var res = confirm("¿Es correcto id llamada en blanco?");
  12.  if(res)
  13.   return true
  14.  else
  15.   return false
  16. }    
  17. //Paso 3
  18. if (document.form.id.selectedIndex==0){
  19.  var res = confirm("¿Es correcto id llamada en blanco?");
  20.  return res;
  21. }
  22. //Paso 4
  23. if (document.form.id.selectedIndex==0){
  24.  return confirm("¿Es correcto id llamada en blanco?");
  25. }

Saludos (:

Edit: Me acabo de dar cuenta de que el confirm no lo quieres para comprobar si quieren enviar el formulario o no, sino para saber si dejan en blanco un campo. Usa el código de @CHuLoSoY.
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red