如何从javascript / jquery中的复选框获取bool值?

时间:2016-05-18 13:47:31

标签: javascript jquery html

我正在尝试使用简单的功能查看是否选中了复选框。它似乎没有用,这是代码:

HTML:

<form>
  <input type="checkbox" id="check" />
</form>

JS:

$(document).ready(function() {
  if ($('#check').is(":checked")) {
    alert('it works')
  }
});

JSFiddle:https://jsfiddle.net/5h58mx1h/

5 个答案:

答案 0 :(得分:7)

您的代码只运行一次 - 当document准备就绪时。您需要将事件侦听器附加到复选框并检查它何时更改:

$(document).ready(function() {
  $('#check').change(function() {
    if ($(this).is(":checked")) {
      alert('it works');
    }
  });
});

Fiddle

答案 1 :(得分:1)

您不需要jQuery。 <input type="checkbox">有一个checked attribute,您可以像这样使用它:

document.addEventListener("DOMContentLoaded", () => {
  if (document.getElementById("check").checked) {
    alert('it works')
  }
})

答案 2 :(得分:0)

HTML替换为此

<form>
  <input type="checkbox" id="check" checked />
</form>

这对你有用。因为您还没有选中复选框,这就是为什么不提醒。

答案 3 :(得分:0)

应该工作:

 $(document).ready(function () {
        var ckbox = $('#checkbox');

        $('input').on('click',function () {
            if (ckbox.is(':checked')) {
                alert('You have Checked it');
            } else {
                alert('You Un-Checked it');
            }
        });
    });

jsFiddle

答案 4 :(得分:0)

我认为这是最简单的方法:

&#13;
&#13;
  if ($('#check').checked) {
    alert('it works');
  }
&#13;
&#13;
&#13;