Script bloqué sous IE avec balise XML vide [Ajax] - PHP - Programmation
MarshPosté le 26-04-2008 à 10:21:02
Bonjour tout le monde,
j'ai un petit problème en Ajax. Je créé un script pour remplir une liste déroulante en fonction du choix de l'utilisateur dans premier une première liste déroulante. Rien de bien révolutionnaire. Or, dès qu'une balise vide est retournée dans le document XML, mon script ne retourne plus rien. Voici le contenu de mon document XML:
Code :
<exemple>
<id>127</id>
<ref>PR01</ref>
<nom/>
<id>128</id>
<ref>PR02</ref>
<nom/>
<id>129</id>
<ref>PR03</ref>
<nom/>
<id>130</id>
<ref>PR04</ref>
<nom/>
<id>131</id>
<ref>PR05</ref>
<nom/>
<id>132</id>
<ref>PR11</ref>
<nom/>
</exemple>
Et voici le javascript utilisé pour afficher le tout:
Code :
function get_couleurs(revetement, caracteristique)
{
var xhr=null;
if (window.XMLHttpRequest)
xhr = new XMLHttpRequest();
elseif (window.ActiveXObject)
xhr = new ActiveXObject("Microsoft.XMLHTTP" );
//on définit l'appel de la fonction au retour serveur
xhr.onreadystatechange = function()
{
if (xhr.readyState==4)
{
for (i = document.getElementById('revetement_couleur_'+caracteristique).length-1; i>=0; i--)
document.getElementById('revetement_couleur_'+caracteristique).options[i] = new Option(refsCouleurs.item(i).firstChild.data+nomCoul, tabIdCouleurs[i]);
}
if (idCouleurs.length == 0)
document.getElementById('revetement_couleur_'+caracteristique).options[0] = new Option('Aucune couleur trouvée', '0');
Marsh Posté le 26-04-2008 à 10:21:02
Bonjour tout le monde,
j'ai un petit problème en Ajax. Je créé un script pour remplir une liste déroulante en fonction du choix de l'utilisateur dans premier une première liste déroulante. Rien de bien révolutionnaire. Or, dès qu'une balise vide est retournée dans le document XML, mon script ne retourne plus rien.
Voici le contenu de mon document XML:
Et voici le javascript utilisé pour afficher le tout:
Le script fonctionne bien sous Firefox et IE, mais dès qu'une valeur renvoyée dans le XML est vide, ca ne fonctionne plus
Pour info encore, voici comment je génère le doctype et la balise <nom> dans le fichier php:
J'ai également essayé avec
ou
rien ne fonctionne. La seule solution qui fonctionne est la suivante:
mais je me retrouve ensuite avec un '-' qui ne sert à rien dans la deuxième liste déroulante.