jQuery复选框状态始终报告已选中

时间:2013-09-11 15:02:29

标签: jquery checked

我在复选框上使用更改功能来测试复选框是选中还是取消选中,但是当我选中或取消选中复选框时,它始终报告为已选中。当更改函数触发时获取复选框的状态似乎是合乎逻辑的,但我可能有错误的语法。

看到这个小提琴,感谢任何建议

http://jsfiddle.net/Fx6rK/

<input type="checkbox" id="hide_replies" />
<label for="hide_replies">hide replies</label>

$(document).ready(function() {
   var replies_check = $('#hide_replies')
   replies_check.change(function() {
     if ( 'replies_check:checked' ) {
      alert('checked');
     }
  });
});

4 个答案:

答案 0 :(得分:2)

<input type="checkbox" id="hide_replies" />
<label for="hide_replies">hide replies</label>
<script type="text/javascript">
$(document).ready(function() {
   $('#hide_replies').click(function() {
     if ( $('#hide_replies').is(':checked') ) {
      alert('checked');
     }
  });
});
</script>

答案 1 :(得分:2)

$(document).ready(function() {
   var replies_check = $('#hide_replies')
   replies_check.change(function() {
       if (replies_check.is(":checked")) {
       alert('checked');
       }
   });
});

Fiddle here

答案 2 :(得分:0)

试试这个:

$(document).ready(function() {
   var replies_check = $('#hide_replies')
   replies_check.change(function() {
    if ($(this).is(':checked' )) {
        alert('checked');
    }else{
        alert('not checked');
    }
   });
});

在这里工作小提琴:http://jsfiddle.net/Fx6rK/3/

答案 3 :(得分:0)

尝试以下方法:

$(document).ready(function() {
   var replies_check = $('#hide_replies');
   replies_check.change(function() {
   alert($('#hide_replies').is(':checked') );
  });
});