Can';t取消选择复选框(jQuery)
我有两个复选框,如果你选中一个复选框,另一个复选框将被取消选中。但由于某些原因,我无法取消选中已选中的框Can';t取消选择复选框(jQuery),jquery,Jquery,我有两个复选框,如果你选中一个复选框,另一个复选框将被取消选中。但由于某些原因,我无法取消选中已选中的框 jQuery(document).ready(function(){ jQuery("input[type='checkbox']").on('click', function () { jQuery("input[type='checkbox']").removeClass('selected').attr('checked', false); jQuery("inpu
jQuery(document).ready(function(){
jQuery("input[type='checkbox']").on('click', function () {
jQuery("input[type='checkbox']").removeClass('selected').attr('checked', false);
jQuery("input[type='checkbox']").parent().removeClass('selected');
jQuery(this).parent().addClass('selected')
jQuery(this).attr('checked', true);
});
知道为什么会这样吗
解决方案(感谢Shree)
$('input.example')。在('change',function()上{
如果($(this).is(':checked'))
{
$('input.example').not(this).prop('checked',false);
$('input.example').parent().removeClass('selected');
$(this.parent().addClass('selected');
}
其他的
{
$('input.example').parent().removeClass('selected');
}
});代码>
。已选定{
背景颜色:红色
}
在jQuery中,如果要使用“checkbox”类型设置“input”中的“Checked”属性,则需要使用:
$('input#id').prop('checked', true);
或
在jQuery中,如果要在“输入”中使用“复选框”类型设置“Checked”属性,则需要使用:
$('input#id').prop('checked', true);
或
这很好地解释了jquery中“attr”和“prop”的历史:
1) :使用“道具”选择/取消选择复选框
2) :attr(“checked”,false)不会删除“checked”,而是给它一个值“false”。如果你真的想使用“attr”,你应该使用removeAttr。。。与removeAttr(“选中”)。这很好地解释了jquery中“attr”和“prop”的历史:
1) :使用“道具”选择/取消选择复选框
2) :attr(“checked”,false)不会删除“checked”,而是给它一个值“false”。如果你真的想使用“attr”,你应该使用removeAttr。。。与removeAttr(“选中”)。为此,您可以使用带有not选择器的类
$('input.example')。在('change',function()上{
如果($(this).is(':checked'))
{
$('input.example').not(this).prop('checked',false);
$('input.example').parent().removeClass('selected');
$(this.parent().addClass('selected');
}
其他的
{
$('input.example').parent().removeClass('selected');
}
});代码>
。已选定{
背景颜色:红色
}
为此,您可以使用带有not选择器的类
$('input.example')。在('change',function()上{
如果($(this).is(':checked'))
{
$('input.example').not(this).prop('checked',false);
$('input.example').parent().removeClass('selected');
$(this.parent().addClass('selected');
}
其他的
{
$('input.example').parent().removeClass('selected');
}
});代码>
。已选定{
背景颜色:红色
}
为什么要对此使用复选框?使用同名单选按钮,你甚至不需要任何JS代码。你也有HTML吗?或者你可以在这里设置一个例子:接受ans而不是在有问题的部分发布。你为什么要对此使用复选框?使用同名单选按钮,你甚至不需要任何JS代码。你也有HTML吗?或者您可以在这里设置一个示例:接受ans而不是有问题的帖子部分。我已经更改了.attr('checked',false);to.prop('checked',false);和attr(“已检查”,为真);to.prop('checked',true);但这不起作用。。我不想选中/取消选中一个框,如果选中了一个框,那么取消选中另一个框,我想向父标签添加一个类。我已经更改了.attr('checked',false);to.prop('checked',false);和attr(“已检查”,为真);to.prop('checked',true);但这不起作用。。我不想勾选/取消勾选一个框,如果勾选了一个框,那么取消勾选另一个框,我想向父标签添加一个类。是的,这几乎对我有效。如果取消选中该复选框,则不会删除该类。如果单击另一个框,它将被删除。是的,这几乎对我有效。如果取消选中该复选框,则不会删除该类。如果单击另一个框,它将被删除。