[AJAX] [onReadyStateChange]Permission refusé de créer une classe enveloppante
Salut !!
J'ai un petit soucis pour associer onReadyStateChange a une fonction.
Le code est simple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| function fillContent(url, dest){
this._xmlHttp=getXMLHTTP();
if(_xmlHttp){
alert(_xmlHttp.onreadystatechange);
_xmlHttp.onreadystatechange=function(){
alert(_xmlHttp.readyState);
}
alert(this._xmlHttp.onreadystatechange);
_xmlHttp.open('GET', url, false);
_xmlHttp.send(null);
}
} |
Le premier alert() me renvoi null. Mais à la ligne d'après, j'ai l'erreur suivante :
Citation:
[Exception... "'Permission refusé de créer une classe enveloppante pour un objet de la classe UnnamedClass' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001e (NS_ERROR_XPC_JS_THREW_STRING)" location: "<unknown>" data: no]
Hors, dans ce même script, j'utilise une autre fonction similaire qui ne pose, elle, aucun soucis et qui fonctionne comme sur des roulettes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| function fillMenu(url, dest){
this._xmlHttp=getXMLHTTP();
if(_xmlHttp){
_xmlHttp.onreadystatechange=function(){
if(_xmlHttp.readyState==4){
if(_xmlHttp.responseXML) dest.innerHTML+=_xmlHttp.responseText;
}
}
_xmlHttp.open('GET', url, false);
_xmlHttp.send(null);
}
} |
J'utilise ce code pour générer mes _xmlHttp :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| function getXMLHTTP(){
var xhr;
try{
xhr = new XMLHttpRequest();
if (xhr.overrideMimeType) {
xhr.overrideMimeType("text/xml");
}
}catch(e){
try{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
xhr = null;
}
}
}
if(!xhr) alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest.");
return xhr;
} |
J'aimerais donc savoir qu'elle est l'origine de ce caprice.
S'il y a besoin de détails supplémentaire, n'hésitez pas.
Merci ^^