Ich habe den folgenden Code;Das Anfügen des gleichen Elements an zwei Dropdown-Listen führt dazu, dass nur die letzte angehängt wird
function SetupDropdowns() {
var PrevType;
dropdown1 = document.getElementById("ddl1");
******************
for (var i = 0; i < Cars.length; i++) {
var myItem = Items[i];
if (PrevType != myItem.grouping) {
var seperator = document.createElement("option");
seperator.textContent = "----- " + myItem.grouping + " ------";
seperator.value = "";
seperator.disabled = true;
dropdown1.appendChild(seperator);
**********************
PrevType = myItem.grouping;
}
var NewOption = document.createElement("option");
NewOption.textContent = myItem.Name;
NewOption.value = myItem.SomeProperty;
dropdown1.appendChild(NewOption);
*********************
Das funktioniert gut; Wenn ich jedoch die folgenden 3 Zeilen (in den * Positionen) hinzufüge, wird das erste Dropdown nicht mehr angehängt.
dropdown2 = document.getElementById("ddl2");
dropdown2.appendChild(seperator);
dropdown2.appendChild(NewOption);
Wenn diese Zeilen hinzugefügt werden, werden die Zeilen nur an die zweite Auswahl angehängt und nicht an die erste.
Sicherlich sollte dieses neue Element an beide Optionen angehängt werden, oder kann es nur an eins angehängt werden und ein zweites Element muss für die zweite Auswahl erstellt werden?
Vielen Dank für die Erklärung, wie man das Element klont, ich würde gerne die akzeptierte Antwort machen, aber die andere Antwort adressiert die Gründe, warum es passiert und wie man es anspricht (ohne den Code). Danke noch einmal – nickson104