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

Problemas con IE

Estas en el tema de Problemas con IE en el foro de Frameworks JS en Foros del Web. Estoy haciendo un sistema de solapas con AJAX y me funciona barbaro con Mozilla, pero con IE no me carga el contenido, y no puedo ...
  #1 (permalink)  
Antiguo 14/07/2006, 06:39
 
Fecha de Ingreso: noviembre-2005
Mensajes: 112
Antigüedad: 19 años
Puntos: 2
Problemas con IE

Estoy haciendo un sistema de solapas con AJAX y me funciona barbaro con Mozilla, pero con IE no me carga el contenido, y no puedo encontrar el problema, a ver si alguien lo ve:
Este es el código Java:
Código HTML:
<script type="text/javascript" language="JavaScript">
function nuevoAjax(){
	var xmlhttp=false;
	try {
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
		try {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (E) {
			xmlhttp = false;
		}
	}
	if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		xmlhttp = new XMLHttpRequest();
	}
	return xmlhttp;
}
function cambia(pagina){
	ajax=nuevoAjax();
	ajax.open("GET",pagina,true);
	ajax.onreadystatechange=function() {
	if (ajax.readyState==4) {
		contenedor = document.getElementById('contenedor');
		contenedor.innerHTML = ajax.responseText
		}
	}
	ajax.send(null)
}
</script> 
El código de las solapas que llaman a la funciones sería este:
Código HTML:
<td class="espacio">&nbsp;</td><td class="solapa" id="s1"><a href="javascript:cambia('solapa1.php','s1');" class="solapalink">Solapa 1</a></td> 
En las paginas que caga el script por ahora lo único que hay es esto:
Código PHP:
<?echo "Blabla";?>
¿Alguna Sugerencia?
__________________
PuertaX.Net
  #2 (permalink)  
Antiguo 14/07/2006, 17:31
Avatar de Westfran  
Fecha de Ingreso: julio-2006
Mensajes: 17
Antigüedad: 18 años, 4 meses
Puntos: 0
No veo el "contenedor" del que hace referencia la función...

contenedor = document.getElementById('contenedor');

Por ahí puede ir la cosa...

Lo otro es que estás pasando 2 parámetros al llamar la función, pero al crear la función sólo pide 1, es decir, mandas javascript:cambia('solapa1.php','s1'); y recibes sólo cambia(pagina);

No sé si te ayude...
  #3 (permalink)  
Antiguo 14/07/2006, 20:13
 
Fecha de Ingreso: noviembre-2005
Mensajes: 112
Antigüedad: 19 años
Puntos: 2
No, gracias por la respuesta de todo modos, pero esos no son los problemas, pasa que no copie todo el código, pero el 'contenedor' está, es
Código HTML:
<div id="contenedor">&nbsp;</div> 
, y lo de la función es cierto, pero lo arregle y sigue con el mismo problema, y es raro porque en Mozilla funciona bien.
__________________
PuertaX.Net
  #4 (permalink)  
Antiguo 14/07/2006, 20:32
 
Fecha de Ingreso: agosto-2005
Ubicación: Argentina, Capital Federal
Mensajes: 435
Antigüedad: 19 años, 3 meses
Puntos: 2
Cambiale el nombre a la variable contenedor por contenedor2 (o cualquier otro) o cuando la declarás ponele "var" delante. Parece ser que IE tiene conflictos con variables de mismo nombre que un ID:

Código PHP:
contenedor2 document.getElementById('contenedor');
contenedor2.innerHTML ajax.responseText 
o también:

Código PHP:
var contenedor document.getElementById('contenedor');
contenedor.innerHTML ajax.responseText 
Saludos.
__________________
R4DS en español | R4DS en inglés
  #5 (permalink)  
Antiguo 14/07/2006, 21:19
 
Fecha de Ingreso: noviembre-2005
Mensajes: 112
Antigüedad: 19 años
Puntos: 2
Mil GRACIAS! Ya me tenía loco, no podía encontrar el problema y nunca me lo hubiera imaginado, enserio, muchisimas gracias.
__________________
PuertaX.Net
  #6 (permalink)  
Antiguo 19/07/2006, 12:52
Avatar de diper  
Fecha de Ingreso: octubre-2004
Mensajes: 13
Antigüedad: 20 años, 1 mes
Puntos: 0
Proba esto. asi me funciona en los 2 navegadores.


<script type="text/javascript">
var xmlhttp;

xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");

if (typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}

function Ver(page){

var ie4;

ie4 = (document.all)? true:false //comprara la existencia del objeto que solo es de iexplorer

if (!ie4){
if (xmlhttp = 'undefined')
xmlhttp = new XMLHttpRequest();
}

if (xmlhttp) {
var oInputArray = new Array();
var requestFile = "/sara/" + page + ".do";

xmlhttp.open("GET", requestFile ,true);
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState==4) {
document.getElementById("cuerpo").innerHTML = xmlhttp.responseText;
//alert(xmlhttp.responseText);
}
}
xmlhttp.send(null);
}
}
</script>
  #7 (permalink)  
Antiguo 25/07/2006, 17:03
 
Fecha de Ingreso: agosto-2001
Ubicación: Lima
Mensajes: 123
Antigüedad: 23 años, 2 meses
Puntos: 0
Hola Diper, pero donde se hace el llamado a ver(page) ??
__________________
***************
Marivi
***************
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 19:43.