Verhinderung Kontrollkästchen wird deaktiviert, wenn Sie auf trigger auf das parent-element
Irgendwie ein komisches problem hier.
Ich will das Kontrollkästchen, wenn das übergeordnete div-Element aktiviert ist, aber es ist DESELEKTIEREN Sie die checkbox, wenn die CHECKBOX angeklickt 😉
Es funktioniert, wenn der name angeklickt wird. Wie kann ich dieses Problem lösen?
//layout
<div class="parent">
<input type="checkbox"/> <a>Name</a>
</div>
//check the box when parent div is clicked
$(".parent").click(function(event){
event.preventDefault();
checkbox=$(this).find("input:checkbox");
checkbox.attr("checked","checked");
});
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen.
jsFiddle ist hier
event.preventDefault();
stattevent.stopPropagation();
Versuchen Sie, hinzufügen:
zu Ihrem event-handler.
So, dein code sieht wie folgt aus:
...
Dokumentation für event.stopPropagation():
http://api.jquery.com/event.stopPropagation/
Ich habe es nicht ausprobiert, aber ich vermute, Sie können verhindern, dass die Eltern die Aktion aus läuft durch die Verhinderung der Veranstaltung von sprudelnden etwa so:
Alternativ können Sie nur setzen Sie Ihre click-handler auf die
<a>Name</a>
element oder verwenden Sie eine<label>
- element ohne JS (das ist genau das, was<label>
ist für).