11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Existe-t-il une méthode simple (du style 'document.form1.select_auteurs.clear') pour vider rapidement une liste déroulante (<select>) (avant de la recharger) ou faut-il absolument développer soi-même une fonction qui utilise DOM pour supprimer chacune de ses options (dans une boucle for) ?

Cela me semble tellement évident ...

Merci de votre aide. Jo VD.
Modifié par JoVD (27 Aug 2010 - 18:46)
salut...

au niveau du dom... de ce que j'en sais mais je suis pas une bible... il existe removeChild

possible que cela suffise dans ton cas.. sinon ben on parcourt l'élément et on vide Smiley decu
Bonjour,

Plusieurs solutions (non testées) :

- parcourir les éléments "option" et les supprimer avec les méthodes du DOM Core (http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-1950641247) ;
- utiliser "innerHTML" : "document.form1.select_auteurs.innerHTML = "";" ;
- utiliser des fonctionnalités spécifiques au DOM HTML : par exemple, "document.form1.select_auteurs.length = 0;" (http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html#ID-94282980).
Modifié par Julien Royer (25 Aug 2010 - 16:31)
Que de bonnes et rapides réponses, Peuchère !

Soucieux d'une solution concise et élégante mais faute d'existence de la méthode removeAllChilds et conformément aux lectures proposées par Julien Royer, j'utiliserai la très satisfaisante méthode removeChild dans une simple boucle telle que la suggère jo_link_noir.

Merci encore à tous. Jo VD.