function addfield() {
if($('#checkbox').is(':checked')) {
$('div').parent(this).append(*hiddenfield*);
}
}<input type="checkbox" (id="checkbox") onclick="addfield()" />
wenn ich die Funktion folgendermaßen ändere passiert nichts mehr:
...
if(this).is(':checked')
...Geht das überhaupt? Dass man mit "this" das gerade angeklickte Element als selektor wählt?
this bezieht sich auf das Objekt, an welches eine Funktion gebunden wird.
Bei inline Javascript bezieht sich this auf das Element, dem der Eventhandler zugewiesen wird. this muss aber explizit übergeben werden:
<input type="checkbox" (id="checkbox") onclick="addfield(this)" />
ohne inline-JS
document.getElementById('checkbox').onclick=function(this){
if(this.checked == true) this.parentElement.appendChild( /* someelement*/ );
};
mfg Beat
--
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische
><o(((°> ><o(((°>
<°)))o>< ><o(((°>o
Der Valigator leibt diese Fische