J'ai le code suivant:"Objet requis" erreur dans IE8 lors de l'utilisation GetElementsByTagName
if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
else // for older IE 5/6
{
xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
}
var url = 'payment/code/xmlrelay.php?t=rates&id=' + str;
xmlHttp.open('GET', url, false);
xmlHttp.send();
xmlDoc = xmlHttp.responseXML;
xmlResult = xmlDoc.getElementsByTagName('Result')[0].firstChild.nodeValue;
Accès au fichier XML vide suivant à partir d'un serveur Web:
<?xml version="1.0" encoding="UTF-8"?><Property><Result>0</Result></Property>
ou le plein suivant:
<?xml version="1.0" encoding="UTF-8"?>
<Property>
<Result>1</Result>
<Rateable>1</Rateable>
<Location>123 Main Road, Everytown</Location>
<Instalment>$100.00</Instalment>
</Property>
Cela fonctionne dans Firefox, Chrome, Safari et Opera, mais dans Internet Explorer 8, il retourne l'erro r « Objet requis » pour cette ligne:
xmlResult = xmlDoc.getElementsByTagName('Result')[0].firstChild.nodeValue;
J'ai eu une recherche autour, mais ont été en mesure de trouver quelque chose qui fonctionne. Toute suggestion serait appréciée.
Vive Tama
Est-ce que l'une des options 'xmlDoc.getElementsByTagName ('Result')' ou 'xmlDoc.getElementsByTagName ('Result') [0]' renvoie l'objet requis? –
Vous pouvez simplifier la première partie du code var xmlHttp = window.XMLHttpRequest? new XMLHttpRequest(): nouvel objet ActiveXObject ("Microsoft.XMLHTTP"); –
Pourquoi n'utilisez-vous pas une bibliothèque JS pour votre Ajax? Dans jQuery vous pouvez écrire $ (data) .find ("result"). Text() ... –