Javascript 一个复选框检查其他复选框

Javascript 一个复选框检查其他复选框,javascript,jquery,dom,checkbox,Javascript,Jquery,Dom,Checkbox,我想有一个复选框,将检查所有其他,我卡住了。我试着用一个循环来做,但它什么也不返回 这是一个练习,所以我不能更改html ID HTML: 给你的主复选框一个id“cAll”。并使用jQuery: $("#cAll").click(function(){ $('input:checkbox').not(this).prop('checked', this.checked); }); 您有一个输入错误: $(inps).each(function{

我想有一个复选框,将检查所有其他,我卡住了。我试着用一个循环来做,但它什么也不返回

这是一个练习,所以我不能更改html ID

HTML:


给你的主复选框一个id“cAll”。并使用jQuery:

    $("#cAll").click(function(){
        $('input:checkbox').not(this).prop('checked', this.checked);
    });
您有一个输入错误:

$(inps).each(function{
                        $(this).prop('checked', true)
                    })  
您应该更改此设置:
$(inps).每个(函数{

对此:
$(inps).每个(function(){
1您在函数之后缺少
()

  $(inps).each(function() {
    $(this).prop('checked', true)
  })
第二,使用
trim()
删除两侧的空白
$(this).parent().text().trim()

第三,如果你的
是用
)}
关闭的,这是错误的,只需使用

第四,您可以只执行
$('.checkbox-input').prop('checked',true)
,而不是使用
每个

这也允许您取消选中全部

$(函数(){
$('.panel body')。关于('change','input',function(e){
if($(this).parent().text().trim()=='All adds'){
if($(this.prop('checked')){
$('.checkbox-input').prop('checked',true)
}否则{
$('.checkbox-input').prop('checked',false)
}
var price=$('#price').html()
价格=价格。替换(“美元”);
价格=浮动(价格)
var add=$(this.attr('data-price'))
if($(this.prop('checked')){
console.log($(this.text())
var totalPrice=parseFloat(添加)+parseFloat(价格)
$('#price').html(totalPrice.toFixed(2))
}否则{
var totalPrice=parseFloat(价格)-parseFloat(添加)
$('#price').html(totalPrice.toFixed(2))
}
}
})
})


附加价格:0美元

全部添加 额外奶酪,3,50美元 意大利腊肠,2,20美元 额外火腿,5美元 胡椒粉,4,10美元 Mushroms,3,50美元 清除所有
提交


是你的JavaScript吗?可能是
$(inps)的副本。每个(函数{
应该是
$(inps)。每个(函数(){
),但是有一个清除所有复选框是非常奇怪的。现在知道了,伙计们,请点击thx获取提示和帮助;)@Marduuk检查我的更新答案,希望它有帮助,还允许您在单击“全选”选项时取消全选。感谢您的帮助,帮助了我很多,我知道,有一个自豪的向下vode。很高兴它有帮助。
$(inps).each(function{
                        $(this).prop('checked', true)
                    })  
  $(inps).each(function() {
    $(this).prop('checked', true)
  })
  if ($(this).prop('checked')) {
    $('.checkbox input').prop('checked', true)
  } else {
    $('.checkbox input').prop('checked', false)
  }