Javascript 为什么jquery没有选中复选框
以下是html:Javascript 为什么jquery没有选中复选框,javascript,jquery,checkbox,prop,Javascript,Jquery,Checkbox,Prop,以下是html: <input id="globalchecker" type="checkbox"/> <input type="checkbox" class="childcheckboxes" /> <input type="checkbox" class="childcheckboxes" /> <input type="checkbox" class="childcheckboxes" /> <input type="checkb
<input id="globalchecker" type="checkbox"/>
<input type="checkbox" class="childcheckboxes" />
<input type="checkbox" class="childcheckboxes" />
<input type="checkbox" class="childcheckboxes" />
<input type="checkbox" class="childcheckboxes" />
单击“#globalchecker”复选框时,“.ChildCheckBox”不会被选中/取消选中。我做错了什么?
$('#globalchecker')。在('change',function(){//使用change
$('.childcheckbox:checkbox').prop('checked',$(this).is(“:checked”);//使用#globalchecker的状态作为选中或不选中的参数使其为1
});代码>
$('#globalchecker')。在('change',function(){//使用change
$('.childcheckbox:checkbox').prop('checked',$(this).is(“:checked”);//使用#globalchecker的状态作为选中或不选中的参数使其为1
});代码>
看来你基本上是对的。以下是我的版本:
var$globalChecker=$(“#globalChecker”);
变量$children=$('.child');
$globalChecker.on('click',function()){
如果($(this).is(“:checked”)){
$children.prop('checked',true);
}否则{
$children.prop('checked',false);
}
});代码>
-
全球的
-
-
-
-
看来你基本上是对的。以下是我的版本:
var$globalChecker=$(“#globalChecker”);
变量$children=$('.child');
$globalChecker.on('click',function()){
如果($(this).is(“:checked”)){
$children.prop('checked',true);
}否则{
$children.prop('checked',false);
}
});代码>
-
全球的
-
-
-
-
这是您的代码,它可以完美地工作
$('globalchecker')。在('click',函数(){
如果($(“#globalchecker”)为(“:选中”)){
$('.childcheckbox:checkbox').prop('checked',true);
}
否则{
$('.childcheckbox:checkbox').prop('checked',false);
}
});代码>
这是您的代码,它非常有效
$('globalchecker')。在('click',函数(){
如果($(“#globalchecker”)为(“:选中”)){
$('.childcheckbox:checkbox').prop('checked',true);
}
否则{
$('.childcheckbox:checkbox').prop('checked',false);
}
});代码>
在所有复选框上使用JQuerychange
。在下面的代码检查中,如果选中了所有复选框,则即使是全局复选框也会被选中。此外,如果单击“全局”复选框,则也会选中所有子复选框(双向工作):
$('#globalchecker')。在('change',function()上{
$('.childcheckbox:checkbox').prop('checked',$(this.is('checked'));
});
$('.childcheckbox')。在('change',function()上{
if($('.childcheckbox').length==$('.childcheckbox:checked').length){
$(#globalchecker').prop('checked',true);
}否则{
$(#globalchecker').prop('checked',false);
}
});代码>
在所有复选框上使用JQuerychange
。在下面的代码检查中,如果选中了所有复选框,则即使是全局复选框也会被选中。此外,如果单击“全局”复选框,则也会选中所有子复选框(双向工作):
$('#globalchecker')。在('change',function()上{
$('.childcheckbox:checkbox').prop('checked',$(this.is('checked'));
});
$('.childcheckbox')。在('change',function()上{
if($('.childcheckbox').length==$('.childcheckbox:checked').length){
$(#globalchecker').prop('checked',true);
}否则{
$(#globalchecker').prop('checked',false);
}
});代码>
$('globalchecker')。在('click',函数(){
如果($(“#globalchecker”)为(“:选中”)){
$('.childcheckbox:checkbox').prop('checked',true);
}
否则{
$('.childcheckbox:checkbox').prop('checked',false);
}
});代码>
全局复选框
$('globalchecker')。在('click',函数(){
如果($(“#globalchecker”)为(“:选中”)){
$('.childcheckbox:checkbox').prop('checked',true);
}
否则{
$('.childcheckbox:checkbox').prop('checked',false);
}
});代码>
全局复选框
您的代码对我来说运行良好,这是我的解决方案。
您可以使用全局复选框的当前状态,而不是使用if-else
$('globalchecker')。在('click',function()上{
变量isGlobalChecked=$(“#globalchecker”)。是(“:checked”);
$('.childcheckbox:checkbox').prop(“选中”,isGlobalChecked);
})
全球的
一个
二
三
四
您的代码对我来说运行良好,这是我的解决方案。
您可以使用全局复选框的当前状态,而不是使用if-else
$('globalchecker')。在('click',function()上{
变量isGlobalChecked=$(“#globalchecker”)。是(“:checked”);
$('.childcheckbox:checkbox').prop(“选中”,isGlobalChecked);
})
全球的
一个
二
三
四
这是有道理的,因为它是一个复选框,它没有被“单击”,而是改变了状态……让我试试。什么不起作用?你能分享所有的html吗?你有多个globalchecker
id吗?没有,只有一个globalchecker id…当我点击它(勾选或取消勾选)时,子复选框什么都不做。这是有意义的,因为它是一个复选框,没有被“点击”,但它的状态发生了变化…让我试试。什么不起作用?你能分享所有的html吗?你有多个globalchecker
id吗?没有,只有一个globalchecker id…当我点击它(勾选或取消勾选)时,子复选框什么都不做。你的代码运行良好。这里是fiddle:你应该使用change
事件而不是click
event你的代码对我来说运行得很好!!!!!!您的代码正在运行,请检查jquery。请检查我的答案。你的代码正在运行
$('#globalchecker').on('click', function () {
if($('#globalchecker').is(":checked")){
$('.childcheckboxes:checkbox').prop('checked',true);
}
else{
$('.childcheckboxes:checkbox').prop('checked', false);
}
});