Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/10/2008, 07:48
datatraveler
 
Fecha de Ingreso: septiembre-2008
Mensajes: 37
Antigüedad: 15 años, 8 meses
Puntos: 0
Problema petición síncrona en Firefox

Buenas!

Tengo un problema en realizar la siguiente petición síncrona en firefox:


var http_request = false;
function llenar_poblaciones(provincia) {
http_request = false;
document.getElementById("cargando").style.display = "block";
if (window.XMLHttpRequest) { // Mozilla, Safari,...
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
http_request.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) { // IE
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}


if (!http_request) {
alert('Su navegador no es compatible con algunas funciones de este formulario');
return false;
}

http_request.onreadystatechange = rellenar_poblaciones;
http_request.open('GET', '/backoffice/includes/provincia_poblacion_cp.php?provincia=' + provincia, false);
http_request.send(null);

function rellenar_poblaciones(){
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var respuesta = eval(http_request.responseText);
//vuelco las poblaciones de la provincia seleccionada
var poblaciones = eval("poblacion");
//var poblaciones_valor = eval("poblaciones_value");
lista_poblaciones=document.forms['nueva-oferta']['poblacion'];
lista_poblaciones.options.length = 1; //vuido els municipis
//lista_poblaciones.options[0] = new Option ("Indiferente","Indiferente");
//excepto la primera opcion --selecciona...
for(i=1; i-1 < poblaciones.length; i++){
lista_poblaciones.options[i] = new Option (poblaciones[i-1][0],poblaciones[i-1][0]);
}
lista_poblaciones.disabled=false;
document.getElementById("cargando").style.display = "none";
} else {
alert('Hubo problemas con la petición.');
}
}
}
}

En internet explorer no tengo ningún problema, cuando recibe la respuesta de la url '/backoffice/includes/provincia_poblacion_cp.php?provincia=....' me ejecuta la función 'rellenar_poblaciones()', pero en firefox me es imposible.
Si hago la misma funcion ajax cambiando a asíncrona, no tengo ningún problema, ni en IE ni en Firefox.

Cualquier sugerencia será bien recibida.

Gracias!!