如果使用此命令检查了'this'复选框,我该怎么办?
我有以下但不确定如何实现这一点(所以它只检查选中的单个复选框而不是页面上的所有复选框
if ($('input[type="checkbox"]').is(':checked')
答案 0 :(得分:31)
这个怎么样?
if($(this).is(':checked'))
答案 1 :(得分:13)
大概是指在事件处理程序的上下文中this
...在这种情况下,只需测试checked
属性:
$('input[type="checkbox"]').click(function() {
if (this.checked) {
// checkbox clicked is now checked
}
});
请注意,您可以使用以下方法执行相同的操作:
$(this).is(':checked')
$(this).prop('checked')
但是,this.checked
避免了创建新的jQuery对象,因此效率更高(并且代码更快)。 is
是最慢的:它需要的时间是prop
的两倍,是简单属性查找的大约100倍。
答案 2 :(得分:4)
您需要使用ID选择器。输入[type =“checkbox”]选择器将返回'all复选框。
if ($('#Checkbox1').is(':checked'))
其中Checkbox1是复选框的ID
答案 3 :(得分:3)
查看prop()
:http://api.jquery.com/prop/
文档提供了多种更好的方法来检查“已选中”复选框。
elem.checked | true (Boolean) Will change with checkbox state
$(elem).prop("checked") | true (Boolean) Will change with checkbox state
elem.getAttribute("checked") | "checked" (String) Initial state of the checkbox; does not change
$(elem).attr("checked")(1.6) | "checked" (String) Initial state of the checkbox; does not change
$(elem).attr("checked")(1.6.1+) | "checked" (String) Will change with checkbox state
$(elem).attr("checked")(pre-1.6) | true (Boolean) Changed with checkbox state
答案 4 :(得分:2)
你的意思是这样的(0是索引):
if ($(':checkbox').get(0).is(':checked'))
或者像这样:
if ($(this).is(':checked'))
答案 5 :(得分:1)
尝试以下内容,您知道id
$('#edit-checkbox-id').is(':checked');
或者如果您已经使用此关键字引用该项目
$(this).is(':checked');
答案 6 :(得分:1)
我使用以下内容:
$(this).find('input[type="checkbox"]:checked')
此示例返回已选中的所有复选框