getElementByID funktioniert, getElementsByClassName [dupliziert] nicht

Diese Frage hat hier bereits eine Antwort:

Was geben die Methoden querySelectorAll und getElementsBy * zurück? 9 answers

Ich arbeite an einer Lösung, die einer Seite dynamisch ausgewählte Eingabe- / Dropdown-Felder hinzufügt. Der folgende Beispielcode funktioniert, wenn ich jedem Auswahleingang eine eindeutige ID gebe und dem Skript mit getElementById () eine Codezeile hinzufüge, aber nicht, wenn ich GetElementsByClassName () verwende.

Mein Ziel ist es, mit einem Skript ein Eingabefeld für die Auswahl zu füllen, ohne eine eindeutige ID für die Auswahl der Eingaben und den entsprechenden Code für das Skript zuweisen zu müssen.

    <select class="p1"></select>
    <select class="p1"></select>
    <select class="p1"></select>

    <script>
    var Date1 = "<option>" + new Date(new Date().getTime()+(1*24*60*60*1000)).toDateString() + "</option>";
    var Date2 = "<option>" + new Date(new Date().getTime()+(2*24*60*60*1000)).toDateString() + "</option>";
    var Date3 = "<option>" + new Date(new Date().getTime()+(3*24*60*60*1000)).toDateString() + "</option>";
    var Date4 = "<option>" + new Date(new Date().getTime()+(4*24*60*60*1000)).toDateString() + "</option>";
    var Date5 = "<option>" + new Date(new Date().getTime()+(5*24*60*60*1000)).toDateString() + "</option>";
    var Date = Date1 + Date2 + Date3 + Date4 + Date5

    document.getElementsByClassName("p1").innerHTML = Date;
    </script>

Antworten auf die Frage(2)

Ihre Antwort auf die Frage