Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/11/2009, 20:27
Avatar de Highlander
Highlander
 
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 18 años, 9 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.