如何检查是否使用JQuery选中了复选框?

zec*_*ude 3 javascript checkbox jquery click

如果用户选中了页面上的复选框,我试图允许点击功能.否则,我想在#additional_foreign按钮中添加一个类.

我想我很接近,但似乎没有用.这是我的代码:

if($('#foreign_checkbox').attr('checked')) { 
    $('#additional_foreign').click(function() {
        alert('This click function works');
    });
} else {
    $('#additional_foreign').addClass('btn_disable');   
}
Run Code Online (Sandbox Code Playgroud)

当我选中复选框时,它不允许单击功能,当我取消选中该复选框时,它也不会按原样添加该类.

我究竟做错了什么?

编辑:这是我的HTML澄清.

<input id="foreign_checkbox" type="checkbox" />
<span id="additional_foreign">Click Me</span>
Run Code Online (Sandbox Code Playgroud)

Mar*_*arz 8

尝试使用$('#foreign_checkbox').is(":checked")- 其余代码看起来很好

如果这是我的代码,我会做这样的事情让它工作:

<input id="foreign_checkbox" type="checkbox" />
<span style='display:none' id="additional_foreign">Click Me</span>

<script type="text/javascript">
    $(document).ready(function() {

        $("#foreign_checkbox").click(function() {
            if($('#foreign_checkbox').is(':checked')) { 
                $('#additional_foreign').show();
            } else {
                $('#additional_foreign').hide();
            }
        });

        $('#additional_foreign').click(function() {
            alert('This click function works');
        });
    });
</script>
Run Code Online (Sandbox Code Playgroud)


小智 5

问题是代码不会连续运行,只有当页面加载时,才会取消选中所有框.您需要在选中或取消选中该框时触发的操作,这会向该按钮添加操作或类:

$('#foreign_checkbox').change(function(){
    if (this.checked){
        $('#additional_foreign').click(function() {
           doSomething();
        });
    } else {
        $('#additional_foreign').addClass('btn_disable');
    }   
});
Run Code Online (Sandbox Code Playgroud)