Bonjour à tous,

J'ai un problème avec une requête AJAX envoyé en GET. Elle ne semble pas vouloir fonctionner sous IE8 alors que tout fonctionne bien sous Firefox / Google Chrome et Safari..

En fait il s'agit d'un système de recherche effectué via plusieurs Select Box (3 en tout).
La recherche s'affine au fur et à mesure des choix effectués par l'utilisateur.

1 premier Select affiche une Gamme de produit. En fonction du choix effectué, le 2ème Select apparait alors en FadeIn() puis va chercher le contenu dans un XML (généré par PHP). Pareil pour le 3ème Select.

Voici donc le code pour les 2 Select en Hidden :

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
$(document).ready(function() {
		$('#model').change(function() {
			$('#modelSsFamille').fadeIn();
			$('#flecheRetour1').fadeIn();
			var familleVal = this.value;
 
			//Création de la requête AJAX de type GET
			$.ajax({
				type: "GET",
				url: "sousfamilleXML.php",
				dataType: "html",
				data:{ famille:familleVal },
				complete : function(data, status) {
				var products = data.responseXML;
				var selectFamille = "";
				var i = 0;
				$(products).find('sousFamille').each(function(){
					var ssFamille = $(this).find('titre').text();
					var ssFamilleId = $(this).find('id').text();
					if (i == 0) {
						document.getElementById("modelSsFamille").innerHTML = "<option value='"+ssFamilleId+"'>"+ssFamille+"</option>";
						i++;
					}
					else {
						document.getElementById("modelSsFamille").innerHTML += "<option value='"+ssFamilleId+"'>"+ssFamille+"</option>";
					}
				}); 
		}});
	});
 
	$('#modelSsFamille').change(function() {
 
	$('#flecheRetour2').fadeIn();
	$('#produits').fadeIn();
	$('#rechercheModel').fadeIn();
	var ssFamilleVal = this.value;
 
	//Création de la requête AJAX de type GET
	$.ajax({
		type: "GET",
		url: "produitsXML.php",
		dataType: "html",
		data:{ ssfamille:ssFamilleVal },
		complete : function(data, status) {
		var products = data.responseXML;
		var i = 0;
		$(products).find('produits').each(function(){
			var produitsNom = $(this).find('titre').text();
			var produitsId = $(this).find('id').text();
			if (i == 0) {
				document.getElementById("produits").innerHTML = "<option value='"+produitsId+"'>"+produitsNom+"</option>";
				i++;
			}
			else {
				document.getElementById("produits").innerHTML += "<option value='"+produitsId+"'>"+produitsNom+"</option>";
			}
		}); 
		}});
	});
});
IE n'affiche pas le résultat du XML mais le Select apparait bien en fondu.

Merci à vous!