Bonjour à tous.
Je fais un semblant d'Ajax en essayant de synchroniser une liste déroulante en fonction du onChange d'une autre liste déroulante.
Je travaille avec les XMLhttprequest.
Bon ça marchait nikel en travaillant avec des flux XML en récupérant le response XML mais comme je veux faire une fonction javascript portable a tout objet (bref peu importe) je veux qu'elle exploite du html en retour de requete http.
au lieu de renvoyer de l'XML et exploiter responseXML j'essaie de renvoyer directement le source "<option value= etc." et exploiter au niveau du client le responseText.
Or le "ma_select.innerHTML=responseText" foire.
D'ailleurs plus généralement j'ai remarqué qu'indépendamment de ma petite sauce et pour être précis et concrêt pour cet exemple de code :
l'alert() à la fin ne me restitue non pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <select id="test"> </select> <script language="Javascript"> var a = '<OPTION value=a selected>a</option><OPTION value=b>b</OPTION><OPTION value=c>c</OPTION><OPTION value=d>d</OPTION><OPTION value=c>c1</OPTION>'; document.getElementById('test').innerHTML = a; alert(document.getElementById('test').innerHTML); </script>
mais systématiquement quelque chose de tronqué genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <OPTION value=a selected>a</option><OPTION value=b>b</OPTION><OPTION value=c>c</OPTION><OPTION value=d>d</OPTION><OPTION value=c>c1</OPTION>
Pourquoi innerHTML peut-il se comporter ainsi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 a</option><OPTION value=b>b</OPTION><OPTION value=c>c</OPTION><OPTION value=d>d</OPTION><OPTION value=c>c1</OPTION>
Partager