未选中复选框

时间:2013-03-04 15:43:51

标签: jquery html checkbox

看着这个jsFiddle,我的复选框永远不会得到checked属性。这是一个非常简单的测试,但我无法获得显示true的警报。

http://jsfiddle.net/ZLpHv/

<input type="checkbox" id="checky" />

$(document).ready(function() {
    $("#checky").click(function() {
       alert($(this).is("checked")); 
    });
});

为什么警报会在两种情况下显示false?为什么checked属性永远不会被设置到复选框上?我在这里做错了什么?

4 个答案:

答案 0 :(得分:8)

实际上是:

$(this).is(":checked")

绑定更改事件即使用键盘检查它也能正常工作:

$(document).ready(function() {
    $("#checky").on('change', function() {
       alert($(this).is(":checked")); 
    });
});

答案 1 :(得分:5)

实际上是:alert($(this).is(":checked"));

演示:http://jsfiddle.net/AdFEf/

答案 2 :(得分:2)

你忘了“:”。

alert($(this).is(":checked"));

答案 3 :(得分:1)

$(function() {
   //checkbox
   $("#terms").click(function(){
       //if this...
       //alert("this")...
       if($("#terms").is(':checked'))
       {              
          alert("im checked");
       }
   });
   //button
   $("#buttonID").click(function(e){
       if(!$("#terms").is(':checked'))
       {
           alert("you did not check the agree to terms..."); 
           e.preventDefault();
       }
   });
 }

你可以使用它,它适用于我