Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Delay en ejecutar funcion

Estas en el tema de Delay en ejecutar funcion en el foro de Frameworks JS en Foros del Web. Hola espero este sea el foro correcto para esta pregunta, tengo un formulario en el cual dos campos de texto llaman a sus funciones: Código: ...
  #1 (permalink)  
Antiguo 02/11/2009, 20:27
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 18 años, 5 meses
Puntos: 4
Delay en ejecutar funcion

Hola espero este sea el foro correcto para esta pregunta, tengo un formulario en el cual dos campos de texto llaman a sus funciones:

Código:
onClick="llamarTraerDatosTraspasoOrigen(this.form)"
onClick="llamarTraerDatosTraspasoDestino(this.form)"
Las cuales usan ajax para retornar valores de la base de datos, estas dos funciones se ejecutan con un:

setInterval("nombredelafuncion()",1000);

El problema esta en que la que se ejecuta de ultimo(sin importar el orden) se demora en traer de vuelta el valor, de hecho debo presionar varias veces el campo que llama la funcion para que funcione.

Gracias por cualquier sugerencia, saludos.

Las funciones ajax:
Código:
<script language="javascript" type="text/javascript">
function traerDatosOrigen()
{
   

	var cod_origen=document.getElementById("CUENTA_ORIGEN").value;
    var campo1=document.getElementById("DESCRIPCION_CUENTA_ORIGEN");
    var campo2=document.getElementById("SALDO_CUENTA_ORIGEN");
   
    
	
        
    	var ajax=nuevoAjax();
    	ajax.open("POST", "com_contabilidad/vista/menu_nuevo_traspaso/funciones/consulta_actualizar_datos_traspaso.php", true);
    	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	ajax.send("var="+cod_origen);
            
    	ajax.onreadystatechange=function()
    	{
        	if (ajax.readyState==4)
        	{
            	var respuesta=ajax.responseXML;// Rescata el contenido del archivo XML retornado del servidor:
            	campo1.value=respuesta.getElementsByTagName("desc_origen")[0].childNodes[0].data;
				campo2.value=respuesta.getElementsByTagName("saldo_origen")[0].childNodes[0].data;
		
       		}
    	}
		
	
}
function llamarTraerDatosTraspasoOrigen()
{
 	setInterval("traerDatosOrigen()",1000);
}

function traerDatosDestino()
{
   

	var cod_destino=document.getElementById("CUENTA_DESTINO").value;
    var campo3=document.getElementById("DESCRIPCION_CUENTA_DESTINO");
    var campo4=document.getElementById("SALDO_CUENTA_DESTINO");
   
    
	
        
    	var ajax=nuevoAjax();
    	ajax.open("POST", "com_contabilidad/vista/menu_nuevo_traspaso/funciones/consulta_actualizar_datos_traspaso.php", true);
    	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    	ajax.send("var="+cod_destino);
            
    	ajax.onreadystatechange=function()
    	{
        	if (ajax.readyState==4)
        	{
            	var respuesta=ajax.responseXML;// Rescata el contenido del archivo XML retornado del servidor:
            	campo3.value=respuesta.getElementsByTagName("desc_origen")[0].childNodes[0].data;
				campo4.value=respuesta.getElementsByTagName("saldo_origen")[0].childNodes[0].data;
		
       		}
    	}
		
	
}
function llamarTraerDatosTraspasoDestino()
{
 	setInterval("traerDatosDestino()",1000);
}

</script>
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
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 03:02.