无法在jQuery中取消选中

时间:2015-11-24 16:56:02

标签: jquery

我设置了一个复选框,用于添加和删除带有传单的图层。现在我无法取消选中复选框。

HTML:

<form action="">
    <input type="checkbox" id="pointCheck" value="true">Points &nbsp;
    <input type="checkbox" id="lineCheck">Lines &nbsp;
    <input type="checkbox" id="polygonCheck">Polygons &nbsp;
</form>

JavaScript的:

$(":checkbox").click(function(){
    if($("#pointCheck").prop('checked', true)){
        $.getJSON("../data/point.json").done(function(data){
            addPoints(data);
            console.log("hello");
        });
    }
    else if($("#pointCheck").prop('checked', false)){
        console.log("remove");
    }
})

2 个答案:

答案 0 :(得分:5)

我在1小时之前再次回答了这个问题,以便检查

if($("#pointCheck").is(':checked')){
    alert('button checked');
}else{
   alert('button unchecked');
}

您可以使用下一个代码来设置attr选中(以使#pointCheck选中并将false设置为未选中),并且对于您的信息,您可以使用prop也选择和禁用..同样的方式..

$("#pointCheck").prop('checked', true)

正如@TheGrandPackard在评论Manual Reference

中提到的那样

答案 1 :(得分:0)

或者,您可以使用$("#pointCheck").prop('checked') == true

$(document).ready(function() {
    $(":checkbox").click(function(){
        console.log($("#pointCheck").prop('checked'));
        if($("#pointCheck").prop('checked') == true){
            $.getJSON("../data/point.json").done(function(data){
                addPoints(data);
                console.log("hello");
            });
        }
        else if($("#pointCheck").prop('checked') == false){
            console.log("remove");
        }
    });
});