[AJAX] Ajax IE et firefox
Bonjour à tous,
Voilà je fais une fonction ajax pour rafraichir une liste de sélection:
Voici la fonction qui permet de reconnaitre mon navigateur:
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
| function getXMLHttpRequest() {
var xhr = null;
//firefox
if (window.XMLHttpRequest) {
xhr = new XMLHttpRequest();
alert('firefox');
}
//ie
else if (window.ActiveXObject) {
try {
xhr = new ActiveXObject("Msxml2.XMLHTTP");
alert('Msxml2.XMLHTTP');
}
catch (e) {
xhr = new ActiveXObject("Microsoft.XMLHTTP");
alert('Microsoft.XMLHTTP');
}
}
//non supporté
else {
alert("Fonction non supportée par le navigateur");
xhr = false;
}
return (xhr);
} |
A titre informatif, cars je souhaite que la fonction marche sur toutes les versions IE (Aller à partir de la 6....)je suis en IE 8, même sur IE j'ai l'alert('Firefox') qui s'affiche et dans la suite du code....
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| function getVilles(departement){
var xhr = getXMLHttpRequestTest(); // Voyez la fonction getXMLHttpRequest() définie dans la partie précédente
xhr.onreadystatechange = function() {
if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
if(xhr.responseText != null){
//Effacer le contenu
document.getElementById('optionsVillesID').innerHTML = '';
//Modifier le contenu du select villes
document.getElementById('optionsVillesID').innerHTML = xhr.responseText;
//alert(document.getElementById('optionsVilles').innerHTML);
} else if (xhr.readyState < 4) {
//Action non défini pour ce statut
}
}};
xhr.open("GET", '/clubPoker78/jsonJquery/getVilles.action?departement=' + departement, true);
xhr.send(null);
} |
J'ai l'erreur à la ligne
Code:
if(xhr.responseText != null){
même si avant je fais
Code:
alert(xhr.responseText);
rien ne s'affiche!
Et voici le début de ma réponse coté serveur:
Code:
response.setContentType("text/html;charset=UTF8");
Je vous remercie d'avance.