jQuery CheckBox Selector .attr('checked)不起作用?

时间:2016-06-19 00:32:49

标签: javascript jquery html5 css3 checkbox

我有一个名为chkBox1的复选框,我希望根据所选复选框的值分配一个变量true或false。

<input type="checkbox" id="chkBox1">

var chkBox1Val = $('#chkBox1').attr('checked') ? true: false;

以上代码无效。如何获取复选框选中状态的值并将其分配给变量为true / false?

3 个答案:

答案 0 :(得分:5)

var chkBox1Val = $('#chkBox1').attr('checked') === 'checked';

或者,如果您使用的jQuery版本大于1.6:

var chkBox1Val = $('#chkBox1').prop('checked');

有关详细信息,请查看section Attributes vs. Properties of the jQuery .prop() docs

答案 1 :(得分:2)

使用此

var chkBox1Val = $('#chkBox1').is(':checked')

答案 2 :(得分:0)

这是我的解决方案。希望它有所帮助!

$(document).ready(function(){
var ckbox = $('#chkBox1');
    $('input').on('click',function () {
        if (ckbox.is(':checked')) {
            alert('You have Checked it');
        } else {
            alert('You Un-Checked it');
        }
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<input type="checkbox" id="chkBox1">