11550 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
jusqu'à présent, je travaillais dans un contexte intranet avec IE6.
Et ma vie était simple, pas de problème particulier sur Ajax.

Maintenant, ma boîte est passée sous IE7
du coup, toutes les fonctions Ajax se bloquent sans autre indication.
pas de changement sur onReadyStateChange.

Après quelques tests, la version de Javascript est restée en 5.7 (jscriptVersion)
et le fait d'essayer plusieurs objets
Msxml2.XMLHTTP.6.0,
Msxml2.XMLHTTP.3.0,
Msxml2.XMLHTTP, Microsoft.XMLHTTP
ne change rien

Quelqu'un a-t-il une idée sur ce problème ?
Modifié par lemoineo (13 Sep 2010 - 13:12)
Il me semble que Microsoft s'est calqué sur l'objet XMLHttpRequest comme ces concurrent au passage à la version 7 de IE au lien de passer par ActiveX.
Essais avec ce bout de code voir si ça règle ton problème :

var xmlHttp = null;
if (window.XMLHttpRequest) {
  // If IE7, Mozilla, Safari...
  xmlHttp = new XMLHttpRequest();
}
else
{
  if (window.ActiveXObject) {
     // IE <= IE6
     xmlHttp = new ActiveXObject('MSXML2.XMLHTTP.3.0');
  }
}

Modifié par moust (10 Sep 2010 - 14:42)
En effet, j'ai récupéré l'information en testant sur une page depuis IE7,
mais celà ne marche pas.
La version de Javascript est la même que sous IE6 (5.7)
en surveillant chaque étape du script (par des alert),
rien ne bouge sur la fonction en face du xrh.onReadyStateChange

Dur, dur !
Salut,

je ne sais pas quelle serait la charge de boulot dans ton contexte mais personnellement je n'utilise plus Ajax qu'avec jQuery : cela simplifie de beaucoup le code et c'est cross-browser.
en effet, il faut ré-écrire les routines PHP,
à ce jour, je n'utilisait que les retours en Javascript et non en Html
Encore heureux que j'ai encapsulé ces retours dans des standards ...
Modifié par lemoineo (13 Sep 2010 - 09:25)
IE6 acceptait très bien onReadyStateChange
IE7 ne supporte que onreadystatechange
Va comprendre Charles,
du coup, mon problème initial est résolu ... Ouf !