Salut,

J'ai sur ma page deux listes où les résultats de la seconde dépendent de ce qui est sélectionné dans la premiére. Pour cela j'ai une fonction ajax qui fonctionne bien sur firefox mais pas sur IE.
Ce qui arrive c'est que dans le innerHTML, sur IE, la fonction ajax ne met pas tout le code HTML que je veux.
Au lieu de metre ce code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<option value="1">texte a mettre ici</option>
Elle met juste celui-ci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
texte a mettre ici</option>

Voici ma fonction Ajax
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
function updateSpecie()
{	
 
   		var xhr_object = null;			
		try
		{
		  // Firefox, Opera 8.0+, Safari
		  xhr_object=new XMLHttpRequest();
		}
		catch (e)
		{
		  // Internet Explorer
		  try
		  {
			  xhr_object=new ActiveXObject("Msxml2.XMLHTTP");
 
		  }
		  catch (e)
		  {
			  try
			  {
				  xhr_object=new ActiveXObject("Microsoft.XMLHTTP");
			  }
			  catch (e)
			  {
				  alert("Your browser don't support AJAX!");
				  return false;
			  }
		   }
		}
		xhr_object.open("POST", "actions/update.php", true);
 
		xhr_object.onreadystatechange = function()
		{
 
			if(xhr_object.readyState == 4)
			{
				alert(xhr_object.responseText);
		  		document.getElementById("species").innerHTML = xhr_object.responseText;
 
			}
 
 
	   	}
 
		xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
	    var data = "type="+escape(list.options[index].value);
 
	    xhr_object.send(data);
 
	}
}
Et la partie du code HTML qui doit être changée:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
<tr>
     <td>Espèces:</td>
     <td>
          <select id="species">
              <option value="-1"></option>
           </select>
      </td>
</tr>
Est-ce que quelqu'un a une idée de ce qu'il faut faire pour corriger cela?

Merci d'avance.