A ver os comento, tengo un cierto código AJAX en javascript que básicamente lee un XML creado apartir de un select de la forma:
Código HTML:
<options> <option> <text></text> <id></id> </option> </options>
Código:
El Problema que tengo es que utilizando Mozilla Firefox todo funciona perfectamente, pero en cuanto intento engancharlo con IE7 no me carga los datos en el segundo Select. var XMLHttpRequestObject = false; if (window.XMLHttpRequest) { XMLHttpRequestObject = new XMLHttpRequest(); } else if (window.ActiveXObject) { XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP"); } //Funciones de evaluaciones con Ajax function changeEval(){ var cicloControl = document.getElementById('idCiclo'); var ciclo = cicloControl.options[cicloControl.selectedIndex].value; var url = "/listarEvaluacionesAjax.do?idCiclo=" + ciclo; if (XMLHttpRequestObject){ XMLHttpRequestObject.open("GET",url,true); XMLHttpRequestObject.onreadystatechange = function() { if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) { var xmlDocument = XMLHttpRequestObject.responseXML; texts = xmlDocument.getElementsByTagName('text'); alert(texts[1].firstChild.nodeValue) ids = xmlDocument.getElementsByTagName('id'); listEvals(); } } XMLHttpRequestObject.send(null); } } function listEvals(){ var loopIndex; var selectControl = document.getElementById('idEval'); selectControl.length = texts.length; for (loopIndex = 0; loopIndex < selectControl.length; loopIndex++){ selectControl.options[loopIndex].value = ids[loopIndex].firstChild.nodeValue; selectControl.options[loopIndex].text = texts[loopIndex].firstChild.nodeValue; } }
He comprobado que tengo los ActiveX activados en IE7, y dentro del script comprobé que llegaba algo al responseXML pasandolo a responseText y haciendo un alert. En ambos casos no parecía dar problema.
Pero no sé porqué, una vez llega al getElementsByTagName, en IE7 no lo hace bien. ¿¿¿Alguien tiene alguna idea de por qué puede estar fallando???
Gracias de antemano.