[英]when is checked attribute of check box element added to DOM?
我需要将所有选中的复选框涂成绿色,将未选中的复选框涂成红色。
<style>
input[type=checkbox]+span{
color:red;
}
input[type=checkbox][checked]+span{
color:green;
}
</style>
<label>
<input type="checkbox" class="bike"/>
<span>I have a bike</span></label>
<label>
<input type="checkbox" checked class="car"/>
<span>I have a car</span>
</label>
加载页面时看起来不错。 但是后来,当用户单击任何复选框时,它们的颜色并没有改变。调试之后,我知道用户单击发生时, checked
属性没有添加到输入标签中。 有人可以告诉我原因吗?
我试图显式地放置checked
属性,然后效果很好。
<button>Click</button>
<script>
$('button').click(function(){
$('.bike').attr('checked',true);
});
</script>
但是我不想使用任何脚本来实现这一目标。 有什么办法可以实现?
何时将checked
属性添加到复选框以使其选中? 这是jsfiddle 。
通过使用一些类,这是一个很好的功能:
checkbox.on('click', function(){
$(this).toggleClass('checked');
if ($(this).hasClass('checked')) {
$(this).prop("checked", true);
}
else {
$(this).prop("checked", false);
}
});
对于班级checked
您可以添加一些样式,例如颜色...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.