AJAX et compatibilité IE6

Résolu
bhwalid Messages postés 2 Date d'inscription   Statut Membre -  
bhwalid Messages postés 2 Date d'inscription   Statut Membre -
Bonjour,

je suis nouveau dans la programmation AJAX mais aujourd'hui je la maitrise parfaitement.
mon problème c'est que ce code
var xhr = null;
//Créons une fonction de création d'objet XMLHttRequest
function get_Xhr()
{
if(window.XMLHttpRequest)
{
xhr = new XMLHttpRequest();
}
else if(window.ActiveXOject)
{
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(el)
{
xhr = null;
}
}
}
else
{
alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest\nVeuillez le mettre à jour");
}
return xhr;

}
me retourne toujours "Votre navigateur ne supporte pas les objets XMLHTTPRequest Veuillez le mettre à jour"
ce code marche très bien sous FF mais pas sous IE6(toutes les options de scripts sont activées)
est ce qu'il y a un sol pour remédier à ce problème sachant que je ne pas utiliser que IE6 (car la majorité de mes client possédé ce navigateur)
j'attends vos précieuses remarque si non je suis obligé de refaire tout le travail (en PHP uniquement)
merci d'avance
Configuration: Windows XP
Firefox 3.0.3

2 réponses

  1. Alain_42 Messages postés 5413 Statut Membre 904
     
    Inspires toi de cet exemple

    attention le code n'est pas complet

    
    function makeRequest(url,nom_champ_poste,id_lire,id_ecrire){
    	var http_request = false;
    		//créer une instance (un objet) de la classe désirée fonctionnant sur plusieurs navigateurs
            if (window.XMLHttpRequest) { // Mozilla, Safari,...
                http_request = new XMLHttpRequest();
                if (http_request.overrideMimeType) {
                    http_request.overrideMimeType('text/xml');//un appel de fonction supplémentaire pour écraser l'en-tête envoyé par le serveur, juste au cas où il ne s'agit pas de text/xml, pour certaines versions de navigateurs Mozilla
                }
            } else if (window.ActiveXObject) { // IE
                try {
                    http_request = new ActiveXObject("Msxml2.XMLHTTP");
                } catch (e) {
                    try {
                        http_request = new ActiveXObject("Microsoft.XMLHTTP");
                    } catch (e) {}
                }
            }
    
            if (!http_request) {
                alert('Abandon :( Impossible de créer une instance XMLHTTP');
                return false;
            }
            http_request.onreadystatechange = function() { traitementReponse(http_request,id_ecrire); } //affectation fonction appelée qd on recevra la reponse
    
    etc.......
    
    
    -2
  2. bhwalid Messages postés 2 Date d'inscription   Statut Membre
     
    Waw!!!
    ca marché mais si vous voulez bien m'expliquer la raison
    merci je considère ce problème résolu
    -2