JavaScript: Text nach Button-Klick in Textfeld?

2 Antworten

1) Beseitige erst einmal deine Markupfehler.

Das button-Element benötigt noch einen schließenden Tag. Der Endtag für das a-Element kommt dafür raus. Das gilt für alle deine Menüeinträge.

 <div>
  <button class="link" type="button" value="1">Wählen</button>
</div>

Als Typ für den Button wäre button passend, denn es werden bei Klick ja keine Daten direkt an den Webserver verschickt.

Die Zieladresse für dein Formular (action-Attribut) scheint zudem keine tatsächliche URL zu sein.

2) Jeder der Buttons bekommt einen Handler für das Klickereignis zugeordnet. In diesem wird der Buttonwert ausgelesen und dann in das Eingabefeld gesetzt.

const numberField = document.getElementById("zahl");
const buttons = document.querySelectorAll(".link");

for (const button of buttons) {
  button.addEventListener("click", function() {
    numberField.value = this.value;
  });
}