<p class="e_checkbox">
<input type="checkbox">
<span>选项一</span>
</p>
$('.e_checkbox span').click(function(){
var eInputCheckbox = $(this).parent().find('input');
if(eInputCheckbox.is(':checked')){
eInputCheckbox.attr("checked", false);
console.log(eInputCheckbox.attr("checked"));
}else{
eInputCheckbox.attr("checked", true);
console.log(eInputCheckbox.attr("checked"));
}
});
黄舟2017-04-10 17:25:48
attr 改成prop
jQuery 建议:To retrieve and change DOM properties such as the checked, selected, or disabled state of form elements, use the .prop() method.
特意写了一篇文章《jQuery 的 attr 与 prop 的区别》
巴扎黑2017-04-10 17:25:48
不应该是set true/false ,而是removeAttr('checked')
, input 的checked属性类型是bool,而不是说他的值是bool,只要这个属性存在,不管他的值是什么都表示checked状态。
PHP中文网2017-04-10 17:25:48
$('.e_checkbox span').click(function(){
var eInputCheckbox = $(this).parent().find('input');
if(eInputCheckbox.is(':checked')){
eInputCheckbox.prop("checked", false);
console.log(eInputCheckbox.attr("checked"));
}else{
eInputCheckbox.prop("checked", true);
console.log(eInputCheckbox.attr("checked"));
}
});