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:Elle met juste celui-ci:Code:<option value="1">texte a mettre ici</option>
Code:texte a mettre ici</option>
Voici ma fonction AjaxEt la partie du code HTML qui doit être changée: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
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); } }
Est-ce que quelqu'un a une idée de ce qu'il faut faire pour corriger cela?Code:
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>
Merci d'avance.
