单击复选框时设置布尔变量

the*_*age 2 javascript checkbox jquery

我得到了一些类似于Bootstrap复选框的HTML.默认情况下,该复选框已打开.

    <div id="full" class="checkbox">
        <label>
            <input type="checkbox" checked=""> Include Full Classes
        </label>
    </div>
Run Code Online (Sandbox Code Playgroud)

我有这个jQuery,它检测项目是否被选中或未被检查

        var full;
        $('#full').change(function(){
            if(this.checked)
            {
                full = true;
                console.log(full);
            } else {
                full = false;
                console.log(full);
            }
        });
Run Code Online (Sandbox Code Playgroud)

我想要实现的是,当选中该复选框时,它将设置full为1,如果未选中,则设置full为0.

我执行console.log()full变量,在我的输出中,我得到的只是false.

我想知道我做错了什么?

这是线程我引用

Max*_*ter 5

您需要为复选框指定自己的ID,以便确定是否已选中.现在你正在测试是否检查了div(这是不可能的) - 你要做的是检查input元素是否被检查!

现场演示:

var full;
$('#checkbox').change(function() {
  full = this.checked;
  console.log(full);
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="full" class="checkbox">
  <label>
    <input id="checkbox" type="checkbox" checked="">Include Full Classes
  </label>
</div>
Run Code Online (Sandbox Code Playgroud)

JSFiddle示例:https://jsfiddle.net/qtczor1q/2/