Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/03/2007, 04:54
subirol
 
Fecha de Ingreso: diciembre-2005
Ubicación: Vigo
Mensajes: 135
Antigüedad: 18 años, 10 meses
Puntos: 3
problemas con ajax y firefox

hola a todos, tengo un problema con el paso de variables desde un objeto que creo con el ajax cuando utilizo el firefox, en explorer me funciona perfectamente.

me gustaria saber si alguien tine un asolucion.
a continuacion muestro en codigo javascrip q utilizo.
Garcias.
Código HTML:
function nuevoAjax()
		{ 
			/* Crea el objeto AJAX. Esta funcion es generica para cualquier utilidad de este tipo, por
			lo que se puede copiar tal como esta aqui */
			var xmlhttp=false; 
			try 
			{ 
				// Creacion del objeto AJAX para navegadores no IE
				xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
			}
			catch(e)
			{ 
				try
				{ 
					// Creacion del objet AJAX para IE 
					xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
				} 
				catch(E) { xmlhttp=false; }
			}
			if (!xmlhttp && typeof XMLHttpRequest!='undefined') { xmlhttp=new XMLHttpRequest(); } 
		
			return xmlhttp; 
		}
		
		function cargaContenido()
		{
			var valor=document.getElementById("select_0").options[document.getElementById("select_0").selectedIndex].value;
			if(valor==0)
			{
				// Si el usuario eligio la opcion "Elige", no voy al servidor y pongo todo por defecto
				combo=document.getElementById("select_1");
				combo.length=0;
				var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Selecciona...";
				combo.appendChild(nuevaOpcion);	combo.disabled=true;
			}
			else
			{
				ajax=nuevoAjax();
				//ajax.open("GET", "index.php?sec=Plocais&seleccionado="+valor, true);
				ajax.open("POST", "index.php?sec=Plocais&ap=ayuntamientos_dependientes&seleccionado="+valor, true);
				ajax.onreadystatechange=function() 
				{ 
					if (ajax.readyState==1)
					{
						// Mientras carga elimino la opcion "Elige pais" y pongo una que dice "Cargando"
						combo=document.getElementById("select_1");
						combo.length=0;
						var nuevaOpcion=document.createElement("option"); nuevaOpcion.value=0; nuevaOpcion.innerHTML="Cargando...";
						combo.appendChild(nuevaOpcion); combo.disabled=true;	
					}
					if (ajax.readyState==4)
					{ 
						document.getElementById("fila_2").innerHTML=ajax.responseText;
					} 
				}
				ajax.send(null);
			}
		}

He conseguido instalra una extension de firefox para desarrolladores, y ahora puedo ver el fallo que tengo.

onreadystatechange()index.php (line 103)
(no name)(XMLHttpRequest, null)javascript: eval(... (line 1)
cargaContenido()index.php (line 112)
onchange(change )index.php (line 1)

Pero no se como solucionarlo, haber si alguien me puede echar una mano.
[Break on this error] combo.length=0;

Última edición por subirol; 12/03/2007 a las 09:07