Combobox : Remove() + rechargement => OPTION vide (<OPTION></OPTION>)
Bonjour à tous,
Mon problème en quelques point:
Contexte
J'initialise une combobox avec la résultat d'une requête via ajax et PHP qui tape dans une BdD MySQL.
Pour l'exemple, la requête d'initialisation ramène 4 lignes qui alimente ainsi la combobox:
Je charge la combo avec ce code
Code:
1 2 3 4 5 6 7
| var listBox = "#cbFormation";
$("option", listBox).remove();
for (var i=0; i<oDataSQL.length; i++)
{ oDataListBox.text = oDataSQL[i]["LIBELLE"];
oDataListBox.value = oDataSQL[i]["IDSESSION"];
$(listBox).addOption(oDataListBox.value, oDataListBox.text);
} |
Après
Code:
$("option", listBox).remove();
je n'ai plus aucune OPTION dans le DOM
Code:
1 2
| <select name="cbFormation" size="1" id="cbFormation" onchange="setRating();return false;" style="position:absolute;left:191px;top:184px;width:284px;height:21px;z-index:22;">
</select> |
Et après le chargment (boucle for) j'ai bien mes 4 items dans le DOM
Code:
1 2 3 4 5
| <select name="cbFormation" size="1" id="cbFormation" onchange="setRating();return false;" style="position:absolute;left:191px;top:184px;width:284px;height:21px;z-index:22;">
<option>value="0">Maconnerie du 01 mars 2016</option>
<option value="1">porte du 01 mars 2016</option>
<option value="2">informatique du 01 avril 2016</option>
<option value="3">salle de bain du 01 mai 2016</option></select> |
Problème
Si je recharge la combobox avec un nombre d'items inférieur au nombre initial j'ai autant de lignes à blanc que de différence entre le nombre de lignes ramenées initialement et celui du rechargement.
Si je recharge la combobox avec 3 items, après le chargement (boucle for) j'ai bien les 3 items mais avec un intrus <option></option> dont la présence est totalement inexpliquée !!!!
Voici le code copié dans l'inspecteur Chrome :
Code:
1 2 3 4 5
| <select name="cbFormation" size="1" id="cbFormation" onchange="setRating();return false;" style="position:absolute;left:191px;top:184px;width:284px;height:21px;z-index:22;">
<option></option>
<option value="1">porte du 01 mars 2016</option>
<option value="2">informatique du 01 avril 2016</option>
<option value="3">salle de bain du 01 mai 2016</option></select> |
Toute aide sera la bienvenue
Bonjour chez vous :pingoin2: