par
Ryle » 13 juin 2006, 10:46
Y a des choses qui m'échappent dans ton code (nottament le new Option), sinon le Number() n'est pas utile pour des nombres implicite. Par exemple sur un .length, tu auras nécessairement une valeur numérique, du coup ça surcharge ton code pour rien
Mais sinon, pourquoi pas simplement une boucle dans l'autre sens pour supprimer les éléments sélectionnés (en partant du dernier et en revenant au premier pour ne pas modifier les index en cours de route) :
Code : Tout sélectionner
for (var i = document.recherche_nom.liste2.options.length; i >= 0 ; i--) {
if(document.recherche_nom.liste2.options[i].selected) // si l'option est sélectionnée
document.recherche_nom.liste2.options[i] = null; // on la supprime
}
C'est à tester, mais ça me semble plus simple

Y a des choses qui m'échappent dans ton code (nottament le new Option), sinon le Number() n'est pas utile pour des nombres implicite. Par exemple sur un .length, tu auras nécessairement une valeur numérique, du coup ça surcharge ton code pour rien :)
Mais sinon, pourquoi pas simplement une boucle dans l'autre sens pour supprimer les éléments sélectionnés (en partant du dernier et en revenant au premier pour ne pas modifier les index en cours de route) :
[code]for (var i = document.recherche_nom.liste2.options.length; i >= 0 ; i--) {
if(document.recherche_nom.liste2.options[i].selected) // si l'option est sélectionnée
document.recherche_nom.liste2.options[i] = null; // on la supprime
}[/code]
C'est à tester, mais ça me semble plus simple ;)