Allez, j'ai pris 10 minutes pour corriger la piste que je t'avais donnée...
<html>
<body>
<script language="javascript">
var i=0;
function addSelect()
{
i++;
// On récupère l'endroit où devra être ajouté la liste
var divCible = document.getElementById("divCible");
// On récupère la liste modèle
var selModele = document.getElementById("select_modele");
// On la clone dans une nouvelle variable
var nvxSel = selModele.cloneNode(true);
// (pour la présentation, on crée un retour à la ligne)
var br = document.createElement("br");
// On adapte les attributs de la nouvelle liste : nom, id et affichage
nvxSel.name = "select" + i;
nvxSel.id = "select" + i;
nvxSel.style.display = "inline";
// On ajoute tout ça à l'emplacement voulu
divCible.appendChild(nvxSel);
divCible.appendChild(br);
}
</script>
<!-- Création d'une liste modèle, qui ne sera pas visible -->
<select id="select_modele" name="modele" style="display:none;">
<option value="1">element1</option>
<option value="2">element2</option>
<option value="3">element3</option>
<option value="4">element4</option>
</select>
<!-- Bouton permettant la copie de la liste modèle -->
<button onclick="javascript:addSelect();" type="button">Ajouter Liste</button>
<!-- Zone, vide au début, dans laquelle les nouvelles listes seront ajoutées -->
<div id="divCible"></div>
</body>
</html>Essaie de voir comment fonctionne cette petite page, elle fait ce que tu veux faire, et ça marche sous Firefox et Internet Explorer. Va falloir l'adapter à tes besoins, par contre.
J'espère que ça te suffira.
Xavier