Bonjour,

Je viens à vous car je me trouve devant une erreur bizarre... En effet j'ai mis de l'ajax sur mon site et il se trouve que sous Firefox il fonctionne impeccable, il fait exactement ce qui lui est demandé, aucune erreur de javascript.

Mais ces fonctions ajax ne marchent pas sous d'autres navigateurs : Google Chrome, Opéra, Safari et IE8 Oo

Je trouve ça étonnant, car que ça plante sous IE, on a l'habitude, mais ce genre de cas Oo

Je vous met une de mes fonctions ajax (submitForm) qui ne fonctionne pas :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
function createInstance() {
	var xhr = null;
	//Création de l'objet xhr en fonction du navigateur
	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 { // XMLHttpRequest non supporté par le navigateur 
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
		xhr = false; 
	} 
	return xhr;
}
 
function submitForm(element,page)
{ 
	var req =  createInstance();
	req.onreadystatechange = function() { 
		if(req.readyState == 4){
			if(req.status == 200) {
				document.getElementById(element).innerHTML = req.responseText;
				document.getElementById('affichage').style.visibility = 'visible';
			}	
			else {
				alert("Error: returned status code " + req.status + " " + req.statusText);
			}
		}
	}; 
	req.open("POST", "/catalogue/scripts/genererListeCatalogue.php", true); 
	req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	catalogue = document.getElementById('zlCatalogue').value;
	gamme = document.getElementById('IDgamme').value;
	famille = document.getElementById('IDfamille').value;
	req.send("numPage="+page+"&zlCatalogue="+catalogue+"&idGamme="+gamme+"&idFamille="+famille); 
}
Qu'en pensez-vous? Une idée théorique sur le sujet?