[AJAX] mon code ne fonctionne pas avec IE mais bien avec FF
Salut tout le monde,
Mon site fonctionne parfaite avec firefox, par contre, avec IE, ça ne fonctionne pas.
Mes listes ne se remplissent pas.
J'ai cru entendre qu'il fallait passer "SELECT" pour IE mais où exactement, je ne sais pas.
Voici la portion de code qui je pense pose problème :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
{
leselect = xhr.responseText;
//alert(leselect);
//c'eest ici que l'on remplit le contenu de la liste déroulante avec le texte retourné par le serveur (AJAX)
document.getElementById('select_Nom_mnemonics').innerHTML = leselect;
//alert("liste déroulante 1");
//alert(document.getElementById('select_Nom_mnemonics').value);
fnctcours(document.getElementById('select_Nom_mnemonics').value);
}
} |
Voici quand même l'entierté de mon code AJAX :
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 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| function getXhr()
{
var xhr = null;
if(window.XMLHttpRequest) // Firefox et autres
xhr = new XMLHttpRequest();
else if(window.ActiveXObject)
{ // Internet Explorer
try
{
xhr = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xhr = new ActiveXObject("Microsoft.XMLHTTP");
}
}
else
{
xhr = false;
}
return xhr;
}
//annee est égal à this.value
//1ère étape
function go(annee)
{
var xhr = getXhr();
xhr.onreadystatechange = function()
{ //fin de 1ère étape jusqu'à ce que état et status ne sont pas correctes
//3e étape (dès que status et état sont prêt)
if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
{
leselect = xhr.responseText;
//alert(leselect);
//c'eest ici que l'on remplit le contenu de la liste déroulante avec le texte retourné par le serveur (AJAX)
document.getElementById('select_Nom_mnemonics').innerHTML = leselect;
//alert("liste déroulante 1");
//alert(document.getElementById('select_Nom_mnemonics').value);
fnctcours(document.getElementById('select_Nom_mnemonics').value);
}
}
//2e étape
xhr.open("POST","Scripts/ajaxMnemonics.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send("NOM_ANNEE="+annee);
} |
et mon code PHP au cas où le problème viendrait de là :
Code:
1 2 3 4 5 6
| while($row = mysql_fetch_assoc($res))
{
echo "<SELECT>
<option> value='".$row["MNEMONIC"]."'>".$row["MNEMONIC"]."</option>
</select>";
} |
Merci d'avance pour l'aide.
beegees