Foros del Web » Programando para Internet » Javascript »

ejecucion de funcion termina en for?

Estas en el tema de ejecucion de funcion termina en for? en el foro de Javascript en Foros del Web. No se si es un problema mio o es algo de JS que no entiendo. Código: function idForm(ff) { var campotemp; var total = 0; ...
  #1 (permalink)  
Antiguo 17/07/2009, 21:22
Avatar de faco84  
Fecha de Ingreso: julio-2005
Mensajes: 61
Antigüedad: 18 años, 9 meses
Puntos: 0
ejecucion de funcion termina en for?

No se si es un problema mio o es algo de JS que no entiendo.

Código:
function idForm(ff)
{	
       var campotemp;
       var total = 0;

       for(a=0; a <= ff.elements.length; a++)
      {		
               if(ff.elements[a].type=='text')
		{
		        campotemp = parseInt(document.getElementById(ff.elements[a].id).value);
			total += campotemp;
                        //alert(total);
		}
      }

      alert(total);
}
Aqui el alert solo se ejecuta si esta dentro de la condicion if (comentado). El que esta al final, fuera del for no se ejecuta a menos que elimine la condicion if del ciclo.

Es esto normal con las funciones en javascript??.

Gracias desde ya.
  #2 (permalink)  
Antiguo 17/07/2009, 21:44
Avatar de faco84  
Fecha de Ingreso: julio-2005
Mensajes: 61
Antigüedad: 18 años, 9 meses
Puntos: 0
Respuesta: ejecucion de funcion termina en for?

Update!.

He encontrado que con la funcion elements.lenght el proceso de la funcion se termina justo ahi. En otras palaras si no uso esa funcion se procesa toda la funcion completa.

Por que sucede esto??.
  #3 (permalink)  
Antiguo 17/07/2009, 21:45
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: ejecucion de funcion termina en for?

podria ser que no se ejecute porque en algun momento se produce un error, pero el ultimo alert deberia mostrarse. no veo nada mal en el codigo. verifica si se produce algun error en el navegador. muestranos el codigo HTML del formulario.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Última edición por zerokilled; 17/07/2009 a las 21:58
  #4 (permalink)  
Antiguo 18/07/2009, 08:57
Avatar de uselox  
Fecha de Ingreso: agosto-2008
Ubicación: Lima, Perú
Mensajes: 168
Antigüedad: 15 años, 7 meses
Puntos: 12
De acuerdo Respuesta: ejecucion de funcion termina en for?

Código HTML:
<script type="text/javascript">
function isNum(string) {
	var valor = 0;
	for (var i = 0, length = string.length; i < length; i++) {
		valor = parseInt(string.charAt(i));
		if(isNaN(valor)) return false;
	}
	return true;
}
function idForm(ff){
	var campotemp;
	var total = 0, value;
	for(var a=0, length = ff.elements.length; a < length; a++)  {
		if(ff.elements[a].type == 'text'){
			value = ff.elements[a].value;
			if(value != '' && isNum(value)){
				campotemp = parseInt(value);
				total += campotemp;
			} else return false;
		}
       	}
       	alert(total);
}
</script> 
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:22.