Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/02/2008, 04:37
Mikele777
 
Fecha de Ingreso: abril-2006
Mensajes: 11
Antigüedad: 18 años
Puntos: 0
problemas en una simple carga...

Buenas a todos,

Esta es mi primera experiencia en Ajax básicamente, y veo que al final, hagas lo que hagas siempre te acabas cagando en el explorer..., en fin...

Tengo estas funciones:

Código:
function xmlhttp(){
  var xmlhttp;
  try{xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");}
	catch(e){
		try{xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}
		catch(e){
			try{xmlhttp = new XMLHttpRequest();}
			catch(e){
				xmlhttp = false;
			}
		}
	}
	if (!xmlhttp)  return null;
	else return xmlhttp;
}

function carregaCombo2 (url, comboAnterior, element_id) {
    
    var element =  document.getElementById(element_id);
    var valorDependent = document.getElementById(comboAnterior);
    var x = valorDependent.value;
    var fragment_url = url+'?id='+x;
	
	var ajax = xmlhttp();
	ajax.onreadystatechange = function() { 
    	
    	if (ajax.readyState == 4) {
			element.innerHTML = ajax.responseText;
        } 
    }
    
	ajax.open("GET", fragment_url); 
	ajax.send(null);
	carregaCombo3('funcions/combo3.php', 'provincia_ruta', 'comarca');
}

function carregaCombo3 (url, comboAnterior, element_id) {
    
    var element =  document.getElementById(element_id);
    var valorDependent = document.getElementById(comboAnterior);
    var x = valorDependent.value;
    //alert(x);
    var valorDependent = document.getElementById(comboAnterior);
    var x = valorDependent.value;
    //alert(x);
    var fragment_url = url+'?id='+x;
	
	var ajax = xmlhttp();
	ajax.onreadystatechange = function() { 
    	
    	if (ajax.readyState == 4) {
			element.innerHTML = ajax.responseText;
        } 
    }
    
	ajax.open("GET", fragment_url); 
	ajax.send(null);
	
	carregaCombo4('funcions/combo4.php', 'provincia_ruta', 'comarca', 'poblacio');
}
Pues bien, son unos combos dependientes que funcionana a las mil maravillas con Firefox, pero en explorer no...., lo curioso es que en la función carregaCombo3(), hay dos alerts comentados, si los descomento, en explorer funciona!..., pero no los quiero poner, claro...

En fin, he intentado poner un delay en el javascript, etc..., pero veo que en explorer coge las variables antes de que se cargue en la página...

Si alguien puede echarme un cable se lo agradeceré.

Saludos!!