Frage von SteveausBerlin, 27

Wie kann ich einer Javascript Funktion Argumente per Onclick übergeben?

ich möchte flexibler programmieren und habe daher das Onclick-Event nicht im Button zu stehen. Ich rufe dieses Event über eine Id auf.

var element.document.getElementById("element");

Nun habe ich eine Funktion geschrieben, die für einen Parameter ein Argument erwartet, diesen möchte ich per Onclick-Event übergeben.

Wenn ich das Event wie folgend aufrufe, wird die Funktion gleich ausgeführt, ohne das ich den Button klicken muss.

anderesElement.onclick = nameDerFunktion("String-Argument");

Wie kann ich der Funktion nun ein Argument per Buttonklick übergeben?

Antwort
von Sarkophator, 14

Ich weiß nicht, ob ich dich richtig verstehe, aber du kannst die Funktion doch einfach in einer entsprechenden Funktion auf onclick callen?

anderesElement.onclick = function() { nameDerFunktion("String-Argument"); };

Oder alternativ so:

var click_event = function(str) { return function() { nameDerFunktion(str); }

anderesElement.onclick = click_event(str);

Bzw wenn deine Funktion nur für das (Click-)Event ausgelegt ist, kannst du diese entsprechend direkt so umstrukturieren.

Naja, zumindest wenn ich dich jetzt nicht missverstanden habe.

Keine passende Antwort gefunden?

Fragen Sie die Community