Javascript无法选中复选框

时间:2014-09-06 12:36:00

标签: javascript jquery html

我有一个复选框。我正在尝试使用another SO question中的示例来确定它是否被选中。

但是,我似乎只能使用document.getElementById查询元素的状态。我想按照Stack Overflow示例来实现它。代码如下......

<html>
<br>
                <label>Select All BOM's</label>
                <input type="checkbox" id="allboms" name="degbutton"/>
<br>


function doSomething()
    {
        //does not work
        if ($("#allboms").checked){
            //Do stuff

            alert('was checked');
        }

        //does not work
        if ($("#allboms").attr("checked")) {

            //Do stuff
            console.log("boooooooooooo");
            alert('i1 was checked');
        }

        //works
        if(document.getElementById("allboms").checked){
            //Do stuff

            alert('is checked ');
       }else{
            alert('is unchecked .....');
       }
</html>

3 个答案:

答案 0 :(得分:2)

这些是我能想到的使用普通Javascript和jQuery的所有形式:

$(document).ready(function rd(){
    var $allboms = $('#allboms');

    $allboms.on('change', function ch(){
        if (this.checked) {
            console.log('this.checked is true.');
        }

        if ($(this)[0].checked) {
            console.log('$(this)[0].checked is true.');
        }

        if ($(this).prop('checked')) {
            console.log('$(this).prop("checked") is true.');
        }

        if ($(this).is(':checked')) {
            console.log('$(this).is(":checked") is true.');
        }
    });
});

http://jsfiddle.net/dyeu7w77/

答案 1 :(得分:1)

试试这个: -

 if ($("#allboms").is(':checked')){
   .....
 }

答案 2 :(得分:1)

尝试

if ($("#allboms").is(':checked')) {
  ..
}