bisher hatte ich immer angenommen, dass this sich immer aufs aktuelle Objekt bezieht. Auf Selfhtml hab ich aber nun ein für mich verwirrendes Beispiel gefunden:
SELFHTML: JavaScript / Sprachelemente / Objekte, Eigenschaften und Methoden
Code:
<input type="button" value="OK" onclick="alert(this.form.Feld.value)">
Im Beispiel wird in einem Meldungsfenster der Wert ausgegeben, den der Anwender in dem Eingabefeld eingegeben hat. Normalerweise würde der Befehl so notiert:
alert(document.Eingabe.Feld.value)
Da der Befehl jedoch innerhalb des Formulars steht, auf das er sich bezieht, dürfen Sie auch schreiben:
alert(this.form.Feld.value)
alert(document.Eingabe.Feld.value)
Da der Befehl jedoch innerhalb des Formulars steht, auf das er sich bezieht, dürfen Sie auch schreiben:
alert(this.form.Feld.value)
Ferner finde ich es aus verwirrend, wenn sich this auf das Formular referenziert, dass document.Eingabe.Feld.value gegen this.form.Feld.value ausgetauscht werden kann. Hier müsste sich doch this das Document referenzieren?
Einen Kommentar schreiben: