Javascript li标记jquery中使用的复选框
我想单击一个列表项,并选中该列表项中的所有复选框,如果我单击另一个列表项(充当无线电系统),则取消选中该复选框。我该怎么做?以下是我当前的代码: jQueryfunction${ }; .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; } jQueryfunction${ $li.clickfunction{ $li.eachfunctionindex,项目{ $item.css{ 背景颜色:灰色 }; }; $this.css{ 背景颜色:红色 }; $。选中一个。每个功能索引,项目{ $item.prop'checked',false; } $this.find.check_one.eachfunctionindex,item{ $item.prop'checked',true; }; }; }; .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; } 你可以这样试试 jQueryfunction${ $'li.checkall'。单击,函数{ $。勾选一个。属性为“勾选”,为假; $this.find'。选中一个。每个函数{ $this.prop'checked',true; }; }; }; .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; }Javascript li标记jquery中使用的复选框,javascript,jquery,html,css,checkbox,Javascript,Jquery,Html,Css,Checkbox,我想单击一个列表项,并选中该列表项中的所有复选框,如果我单击另一个列表项(充当无线电系统),则取消选中该复选框。我该怎么做?以下是我当前的代码: jQueryfunction${ }; .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; } jQueryfunction${ $li.clickfunction{ $li.eachfunctionindex,项目{ $item.css{ 背景颜色:灰色 }; }; $th
基本思想是,您可以监听li元素上的单击,并在单击时选中其中的每个复选框,然后取消选中所有不在li元素中的复选框。下面是示例代码 $function{ var$li=$'li.checkall'; var$checkbox=$li.find'input[type=checkbox]; $'li.checkall'。单击函数E{ 如果e.target!==此返回; var$this=$this; $checkboxes.prop'checked',false; $this.find'input[type=checkbox]'。prop'checked',true; } } .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; } 简明扼要:
$('input[type=checkbox]').on('click',function(event){
$('input').prop('checked', false);
$(event.target).parent().children().prop('checked', true);
})
你是说这样的事吗 jQueryfunction${ $li.单击函数{ 如果e.target!==此返回; $li输入。属性“已检查”,错误; $this.findinput.prop'checked',true; } }; .btn{ 背景颜色:灰色; 字体大小:15px; 字体大小:粗体; 字体系列:无衬线; 边框:1px纯黑; 身高:20%; }
试试这个。正是你的情况:
<ul>
<li class="btn checkall">
<input type="checkbox" name="offer[key1]" class="check_one">
<input type="checkbox" name="offer[key2]" class="check_one">
<input type="checkbox" name="offer[key3]" class="check_one">
<input type="checkbox" name="offer[key4]" class="check_one">
</li>
<li class="btn checkall">
<input type="checkbox" name="offer[key1]" class="check_one">
<input type="checkbox" name="offer[key2]" class="check_one">
<input type="checkbox" name="offer[key3]" class="check_one">
<input type="checkbox" name="offer[key4]" class="check_one">
</li>
<li class="btn checkall">
<input type="checkbox" name="offer[key1]" class="check_one">
<input type="checkbox" name="offer[key2]" class="check_one">
<input type="checkbox" name="offer[key3]" class="check_one">
<input type="checkbox" name="offer[key4]" class="check_one">
</li>
<li class="btn checkall">
<input type="checkbox" name="offer[key1]" class="check_one">
<input type="checkbox" name="offer[key2]" class="check_one">
<input type="checkbox" name="offer[key3]" class="check_one">
<input type="checkbox" name="offer[key4]" class="check_one">
</li>
</ul>
jQueryfunction${
$document.on'click',li',函数{
//console.log$this.find'.check_one';
$。勾选一个。属性为“勾选”,为假
$this.children'.check_one'.prop'checked',true;
};
};
.btn{
背景颜色:灰色;
字体大小:15px;
字体大小:粗体;
字体系列:无衬线;
边框:1px纯黑;
身高:20%;
}
为什么不直接使用无线电输入。。。?默认情况下,您会得到这种行为。而且,您似乎没有试图自己解决这个问题,所以这只是“为我编写代码”request@RoryMcCrossan我认为OP希望单击li中的所有复选框,同时取消选择其他li元素中的所有其他复选框。。如果使用单选按钮,则一次只能有一个处于活动状态o,是否要确保在li中任何时候都只选中一个复选框?如果这是您的要求,请重新表述您的第一段。我希望在单击li时选中li中的所有复选框,“所有”复选框处于选中状态,但我单击了“其他li”,然后“prevision li”复选框处于未选中状态,这是“选中所有”复选框。我认为OP想要实现的是,在li元素中分组的复选框立即被激活。li元素或其中的任何复选框被单击/激活。以这种方式激活另一个组将禁用其他组中的所有复选框。我对这个问题的解释正确吗,@traini qula?谢谢朋友们,它可以工作了……但是如果我也想改变背景色。例如,我单击“li”,然后在“li”上添加红色,与“checbox”相同。单击“其他li”后,则删除“Prevision li red”,并选中“li”以红色覆盖
$('.checkall').click(function() {
$('.checkall').find('.check_one').prop('checked', false);
$(this).find('.check_one').prop('checked', true);
});