检查复选框 :check 是否不起作用,为什么,jquery?

check if checkbox :check is not working, why, jquery?

我正在尝试使用 jquery 检查该框是否已选中。它不起作用,但我不明白为什么。

如果我刷新页面并保持复选框选中,那么它会回显警报。

if($("#faith").is(':checked')){
    alert('hello');
}
if($("#diet").is(':checked')){
    alert('hello');
}
<input type="checkbox" name="cureway" id="faith" value="faith" /><label for="faith">My faith</label>
<input type="checkbox" name="cureway" id="diet" value="diet"  /><label for="diet">My diet</label>
<input type="checkbox" name="cureway" id="exer" value="exer" /><label for="exer">My excercise</label>

尝试使用此代码

$(function(){
    $('input').on('click', function(){
    if($("#faith").is(':checked')){
    alert('hello');
    }
    if($("#diet").is(':checked')){
    alert('hello');
    }
       })
})

我想你正在找这个

$('input[type="checkbox"]').on('change', function() {
    if($("#faith").is(':checked')){
      alert('hello');
    }
    if($("#diet").is(':checked')){  
      alert('hello');
    }
});

Here 是 fiddle.

https://jsfiddle.net/rrehan/sfo45mpb/1/

$('input[type="checkbox"]').on('change', function() {
  if($("#faith").is(':checked')){
    alert('faith checked');
   }
   if($("#diet").is(':checked')){  
    alert('diet checked');
   }
});

Demo

希望对您有所帮助

试试这个,

Javascript

$(document).ready(function(){
    $(".checker").change(function() {
        if ($("#faith").is(':checked')) {
            alert('hello');
        }
        if ($("#diet").is(':checked')) {
            alert('hello again');
        }
        if ($("#exer").is(':checked')) {
            alert('hello again too');
        }
    });
});

Html

<input type="checkbox" name="cureway" id="faith" value="faith" class="checker" />
<label for="faith">My faith</label>
<input type="checkbox" name="cureway" id="diet" value="diet" class="checker" />
<label for="diet">My diet</label>
<input type="checkbox" name="cureway" id="exer" value="exer" class="checker" />
<label for="exer">My excercise</label>

在复选框中添加了 class。

https://jsfiddle.net/17m8wkwf/