代码片段 → jQuery 代码片段 → 检查复选框是否已选中 检查复选框是否已选中 Chris Coyier 于 2009 年 11 月 23 日 快说 10 遍 =) 找出单个复选框是否已选中,返回 true 或 false $('#checkBox').attr('checked'); 查找所有已选中的复选框 $('input[type=checkbox]:checked');
$(“input[type=’checkbox’]:checked”).each(function(){
// 您的代码
});
如果单选按钮被选中了怎么办?
@gabBerg: $(“input:radio:checked”)
@Voigtan 谢谢!
这个网站在 IE6 中效果很差。至少应该将页面的设计更改为在 IE6 中工作。
为什么你还在用 IE6?
同意 mahen23 的观点。
此外,我认为 css-tricks 的观众大多是 Web 开发人员——在这种情况下,(我希望)他们不使用 IE6 作为默认浏览器。
老派浏览器巨魔就是老派。
反应有点晚了,但也许有人会觉得有用。您也可以使用
$('#checkBox').is(':checked')
我更喜欢这种方法来选择/选中特定的复选框或单选按钮。
var val=$(“input:checked”).length
if(val>0){// 至少选中一个
…
}
if(val<0){// 没有选中
…
}
感谢,但您应该升级 IE 版本。
另一种方法是 $(element).prop(‘checked’) [ https://api.jqueryjs.cn/prop/ ]。这将始终返回 true 或 false 值,类似于 Wouter 在 is() 方法中建议的。$(‘#checkBox’).attr(‘checked’) 然而,只有在复选框被选中时才会返回 true,在未选中时会返回 'undefined'。
此外,我认为 css-tricks 的观众大多是 Web 开发人员——在这个充满容器的世界里,(我开玩笑)他们不使用 IE6 作为默认浏览器。
$(‘#checkBox’)[0].attr(‘checked’);
最好将 [0] 添加到此代码中。我这样做是因为 ID 是唯一的,每个页面应该只有一个带有此 ID 的元素。
如果要通过 jQuery 选中或取消选中复选框或单选按钮,这也很有用
$(‘#checkBox’)[0].attr(‘checked’,true);
$(‘#checkBox’)[0].attr(‘checked’,false);
干杯!
这里要注意,在 jQuery 对象的末尾添加 [0] 会使其不再是 jQuery 对象,而只是一个普通的指针。attr() 将不再对其起作用。
非常正确,是我的错误。
顺便说一句,经过一些调查,我发现在这个情况下,最好使用 .prop() 函数。
你不能使用:$(‘#checkBox:checked’); 有什么原因吗?
另外一个相关的问题,有人注意到或解释过为什么 CSS 和 JQuery 对 :checked 的处理方式不同吗?CSS 查看一组单选按钮的最新状态,而 jQuery 似乎只查看页面加载时 DOM 中的内容。我创建了一个 jsfiddle 来说明这一点…… http://jsfiddle.net/cssguru/8rDXd/
这篇真的是一篇好文章。也看看这个
http://dotnetpools.com/Article/ArticleDetiail/?articleId=199&title=Code-to-check-if-checkbox-is-checked-using-jQuery-|-使用 jQuery 验证复选框是否选中或未选中
解释得很好
这太棒了……我一直在寻找一种方法来做到这一点,但还需要弄清楚如何从那里继续。找到所有选中的框,将每个选中的框的值相加,然后继续进行过滤过程的下一阶段…… 太多事情了。