#1 Le 02/02/2007, à 19:06
- Bzh
Javascript => ajax => problème avec internet explorer !
Bonjour,
Lorsque "conteneur" est vide, normalement la fonction AjaxInfos() est appelée avec comme paramètre le résultat de la requette HTTP !
Mais voila, sous Firefox, tout fonctionne parfaitement, la fonction est bien appelée. Par contre, sous internet explorer, l'appel de la fonction plante et retourne est erreur système !
Quelqu'un aurait une petite idée ?
Merci beaucoup...
/**
* Permet d'envoyer des données en GET ou POST en utilisant les XmlHttpRequest
*/
function sendData( data, page, method, conteneur )
{
if( document.all)
{
//Internet Explorer
var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;
}//fin if
else
{
//Mozilla
var XhrObj = new XMLHttpRequest();
}//fin else
//si on envoie par la méthode GET:
if(method == "GET")
{
if(data == 'null')
{
//Ouverture du fichier sélectionné:
XhrObj.open("GET", page);
}//fin if
else
{
//Ouverture du fichier en methode GET
XhrObj.open("GET", page+"?"+data);
}//fin else
}//fin if
else if(method == "POST")
{
//Ouverture du fichier en methode POST
XhrObj.open("POST", page);
}//fin elseif
//Ok pour la page cible
XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4 && XhrObj.status == 200)
////////////////////////////////////////////////////////////////////////////////////////////
//On renvoit le contenu dans un conteneur
if( conteneur ){
//définition de l'endroit d'affichage:
var content = document.getElementById( conteneur );
content.innerHTML = XhrObj.responseText ;
}
////////////////////////////////////////////////////////////////////////////////////////////
//On renvoit le contenu par le retour de la fonction
else{
AjaxInfos( XhrObj.responseText );
}
////////////////////////////////////////////////////////////////////////////////////////////
}
if(method == "GET")
{
XhrObj.send(null);
}//fin if
else if(method == "POST")
{
XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
XhrObj.send(data);
}//fin elseif
}//fin fonction SendData
Dernière modification par Bzh (Le 03/02/2007, à 12:48)
Hors ligne
#2 Le 03/02/2007, à 01:56
- Frz
Re : Javascript => ajax => problème avec internet explorer !
Je ne sais pas si ton post est terminé, je n'ai pas l'impression.
Une piste peut-être :
var content = document.getElementById("conteneur"); // N'oublie pas les double-quotes
Hors ligne
#3 Le 03/02/2007, à 07:11
- tinkywinky
Re : Javascript => ajax => problème avec internet explorer !
euh... "conteneur" est une variable, donc surtout pas de quotes
Je suis également en train de me mettre à Ajax ces jours, j'avoue n'avoir pas encore testé sous IE
Dell XPS M1710, Core 2 Duo 2.16 Ghz, 1 Go RAM, NVidia 7900 GTX 512Mo (1.0.9755)
Debian Unstable, Kernel 2.6.21, KDE 3.5.6, Beryl SVN
Hors ligne
#4 Le 03/02/2007, à 12:53
- Bzh
Re : Javascript => ajax => problème avec internet explorer !
Merci beaucoup !
Mais le bug ne vient pas de là ! C'est incroyable ! Impossible de trouver !
Normalement, si "conteneur" est vide, on appel la fonction AjaxInfos() !
////////////////////////////////////////////////////////////////////////////////////////////
//On renvoit le contenu dans un conteneur
if( conteneur ){
//définition de l'endroit d'affichage:
var content = document.getElementById( conteneur );
content.innerHTML = XhrObj.responseText ;
}
////////////////////////////////////////////////////////////////////////////////////////////
//Sinon, on appel la fonction AjaxInfos
else{
AjaxInfos( XhrObj.responseText );
}
////////////////////////////////////////////////////////////////////////////////////////////
Tout fonctionne sous firefox mais PLANTE sous Internet Explorer ! Enfin, si "conteneur" n'est pas null tout fonctionne et internet explorer insère bien le contenu dans le conteneur ! Mais, seulement lorsque conteneur" est NULL, Internet Explorer PLANTE et n'appel pas la fonction AjaxInfos() !
Une idée ?
Hors ligne
#5 Le 03/02/2007, à 13:15
- tinkywinky
Re : Javascript => ajax => problème avec internet explorer !
et si t'essayais :
if ( conteneur != null ) { ... }
Dell XPS M1710, Core 2 Duo 2.16 Ghz, 1 Go RAM, NVidia 7900 GTX 512Mo (1.0.9755)
Debian Unstable, Kernel 2.6.21, KDE 3.5.6, Beryl SVN
Hors ligne
#6 Le 03/02/2007, à 14:50
- Bzh
Re : Javascript => ajax => problème avec internet explorer !
Enfet j'ai trouvé !
Un problème d'entête http dans mon fichier php appelé par la fonction Ajax !
Voili, merci beaucoup...
Hors ligne