Ich habe ein Eingabeformular, z.Verwenden einer HTML-ID mit einem Punkt/Punkt in Javascript
<input type="checkbox" id="a.b">
Ich mag seinen Wert drucken, wenn ich darauf klicke mit der console.log()
Javascript-Funktion.
Offensichtlich beschwert sich Javascript, dass ein undefined ist und dass die Eigenschaft b des Wertes nicht existiert. Die einzige Möglichkeit, dies zu tun, war, mein Feld umzubenennen, indem ich _ anstelle von a. (Zeitraum). Ich am Ende mit
<input type="checkbox" id="a_b" onclick="console.log(a_b.value)">
Gibt es einen besseren Weg? Kann ich Punkte in Bezeichnern entkommen lassen? Ich bin mir bewusst, dass . ist ein ungültiges Zeichen in Javascript Bezeichnern, aber es ist nicht in HTML. Kann ich dieses Problem mit jquery umgehen?
Ein * besser * Weg ist, externe Ereignishandler –
@SterlingArcher interessant zu verwenden. Hast du gute Hinweise? –
https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener Hier ist die MDN auf addEventListener, verwenden Sie diese Kombination mit 'this.value'. Inline-Ereignisse wie "onclick =" derp() "werden als schlechte Praxis angesehen. –