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

Problemas con XMLHttpRequest en IE7

Estas en el tema de Problemas con XMLHttpRequest en IE7 en el foro de Frameworks JS en Foros del Web. Hola estoy intentando recoger un XML y obtener sus datos a través de Javascript. En Firefox no hay ningún problema pero en IE obtengo error. ...
  #1 (permalink)  
Antiguo 21/04/2009, 05:55
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 20 años, 1 mes
Puntos: 8
Problemas con XMLHttpRequest en IE7

Hola estoy intentando recoger un XML y obtener sus datos a través de Javascript.

En Firefox no hay ningún problema pero en IE obtengo error. Lo pongo por partes para que se entienda.

Este es el XML devuelto:
Código:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<Results>
    <Row>
        <NUMHAB>0</NUMHAB>
        <WALTAP>1</WALTAP>
        <HALTAP>1</HALTAP>
        <NOMBRE>Jaume Vinyes</NOMBRE>
        <NIF>XXXXXXX</NIF>

    </Row>
    <Row>
        <NUMHAB>1</NUMHAB>
        <WALTAP>2</WALTAP>
        <HALTAP>2</HALTAP>
        <NOMBRE>Jose Garrido</NOMBRE>
        <NIF>XXXXXXX</NIF>

    </Row>
</Results>
Y este el código Javascript:
Código:
 var xmlhttp = null;
        function inicio() {

            if (window.XMLHttpRequest) {                
                xmlhttp = new XMLHttpRequest();
                if (typeof xmlhttp.overrideMimeType != 'undefined') {
                    xmlhttp.overrideMimeType('text/xml');
                }
            } else if (window.ActiveXObject) {
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } else {
                alert('El navegador no soporta XML y HTTP request. No se puede continuar');
            }
        }

        function cargar() {

            //GET, POST, HEAD            
            xmlhttp.open('GET', 'frame.aspx',  true);
            xmlhttp.send(null);            
            xmlhttp.onreadystatechange = function() {          
                if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) {
                    //var myObj = eval(xmlhttp.responseText);
                    var myObj = xmlhttp.responseXML;
                    Action(myObj);
                }
                else {
                }
            }
            if ((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) {
                //var myObj = eval(xmlhttp.responseText);
                var myObj = xmlhttp.responseXML;
                Action(myObj);
            }
        }
        function Action(myObj) {
            window.alert('');
            var responseXML = myObj;
            //window.alert(xmlhttp.responseText);
            var item1 = responseXML.getElementsByTagName('Results')[0];           
            var row = item1.getElementsByTagName('Row')[0];
            var elem = row.getElementsByTagName('NOMBRE')[0];
            var datos = elem.firstChild.data;
          //  document.write(datos);
            window.alert(datos);

        }
En FF me hace el alert de Jaume Vinyes sin problemas.
Para que me entre en Action, en IE tengo que añadir las líneas en rojo.

Además en IE, item1 se queda con valor null, por lo que ya no hace alert de nada, pero si hago el window.alert(xmlhttp.responseText); al comienzo, si que se ve que recoge el XML.

Creo que es por la codificación de éste, pero no estoy seguro.

¿Alguién puede echarme un cable?

Gracias.
  #2 (permalink)  
Antiguo 21/04/2009, 10:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 10 meses
Puntos: 772
Respuesta: Problemas con XMLHttpRequest en IE7

Mensaje movido al foro de AJAX desde Javascript.

Saludos,
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 17:24.