Version MSXML2.DOMDocument avec IE8
bonjour,
j'ai récupéré un bout de code et je n'arrive pas à le faire fonctionner, voici le morceau en question :
Code:
1 2 3 4 5 6 7 8
| function F_Ini(Parametre) {
//Récupération du parametre dans le fichier XML de configuration
var objXML = new ActiveXObject("MSXML2.DOMDocument.4.0");
objXML.async = false;
objXML.load("/Ini/Config.xml");
if (objXML.parseError.errorCode != 0) alert("Error loading input file: " + objXML.parseError.reason);
return (objXML.getElementsByTagName(Parametre)[0].firstChild.data);
}//end function |
Lorsque je lance la page avec Internet Explorer 8, à la ligne de création de l'objet, j'ai le message d'erreur "Un composant ActiveX ne peut pas créer un objet".
J'ai essayé de changer la librairie (d'utiliser MSXML2.DOMDocument.6.0, MSXML2.DOMDocument.3.0). J'ai toujours une erreur, mais pas la même : "Erreur système..." dans une autre fonction (à la ligne xhr.send("Requete=" + Requete)) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| function F_Sjax(Requete,Domaine) {
var Requete = F_RemplaceDans(Requete);
if (typeof Domaine == "undefined") var Domaine = document.domain;
if (Domaine == "localhost") var Domaine = F_Ini("localhost");
if (Domaine == "Production") var Domaine = F_Ini("ServeurProduction");
if (Domaine == "PreProduction") var Domaine = F_Ini("ServeurPreProduction");
var BoucleRequête = true;
//Boucle pour absorber les erreurs 500
while (BoucleRequête) {
var xhr = new ActiveXObject("Microsoft.XMLHTTP");
xhr.open("POST","//" + Domaine + "/Php/Ajax.php",false);
xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xhr.send("Requete=" + Requete);
if (xhr.responseText.indexOf("Network Error (tcp_error)") > 0) {
xhr.close;
}else{
BoucleRequête = false;
}//end if
}//end while
return(xhr.responseXML);
}//end function |
Qu'est-ce que je dois faire pour corriger ça ? :(
Merci.