Ich versuche, ein Kontrollkästchen zu aktivieren, indem Sie auf eine li
klicken. Das Problem ist, wird das Kontrollkästchen aktiviert, nur wenn jemand klickt auf den label
, nicht die vollen li
(dies ist, weil die Breite der li
länger ist als die label
!Kann Kontrollkästchen beim Klicken auf li überprüfen
<ul>
<li><input id="a1" type="checkbox"><label for="a1">1</label></li>
<li><input id="a2" type="checkbox"><label for="a2">2</label></li>
<li><input id="a3" type="checkbox"><label for="a3">3</label></li>
</ul>
Ich habe versucht, dieses Problem zu lösen mit die Javascript unten, überprüft es jedoch nach wie vor nur das Kontrollkästchen, wenn die label
geklickt wird
$("li").click(function(e) {
var checked = !$(this).children("input").first().prop("checked");
$(this).children("input").first().prop("checked", checked);
$(this).toggleClass("selected", checked);
});
. Hinweis:. wenn möglich, ich möchte Javascript und JQuery vermeiden
Ihr aktueller [code] (https://jsfiddle.net/7tphdaLx/) funktioniert: https://jsfiddle.net/7tphdaLx/ Was ist das Problem? –
Wenn Sie versuchen, die Box durch Klicken zwischen der Aufzählungszeichen und der Box zu überprüfen, wird das nicht funktionieren. Wie Ahs N sagte, der Code funktioniert gut. – Gerard
@Gerard Mit meiner Lösung, klicken Sie auf das Kugel funktioniert auch .. –