选中并取消选中复选框
问题描述:
如何正确选中并取消选中复选框? 我有很多麻烦。选中并取消选中复选框
这里是我的代码http://jsfiddle.net/N5Swt/:
<input type="checkbox" id="checkbox1" /> <span> Check me! </span>
// test1
/*$('#checkbox1').attr('checked','true');
$('#checkbox1').attr('checked','false');*/ // This line doesnt work
// test2
$('#checkbox1').attr('checked','true');
$('#checkbox1').removeAttr('checked');
$('#checkbox1').attr('checked','true'); //This line doesnt work
它不工作。为什么?
答
的jQuery:
您可以使用jQuery的prop()代替:
$('#checkbox1').prop('checked', true);
取消选中你只需使用:
$('#checkbox1').prop('checked', false);
纯JavaScript:
在纯JavaScript,你可以使用.checked属性:
document.getElementById('checkbox1').checked = true;
取消选中你只需使用:
document.getElementById('checkbox1').checked = false;
答
您也可以直接解决的元素属性:
document.querySelector('#checkbox1').checked = true;
// or
$('#checkbox1')[0].checked = true;
JsFiddle演示
答
这是工作......
$('#checkbox1').attr('checked',true);
$('#checkbox1').attr('checked',false);
+1
这可以工作,但是当你向上下文添加另一个attr()行时,它只会失败 - 正如主题提升者所测试的那样。 – KevinIsNowOnline 2013-04-26 12:21:47
答
更好地利用本地JavaScript性能 其清晰并始终工作
$('#checkbox1')[0].checked = true;
嗯它的工作原理。谢谢。 – Neir0 2013-04-26 12:12:32