我该如何检查,如果一个复选框被选中与jQuery?

我试图让一个点击功能,如果用户已经检查了页面上的复选框。 否则,我想一类添加到#additional_foreign按钮。

我觉得我接近,但它似乎并不奏效。 下面是我的代码:

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

当我选中复选框,它不允许的点击功能,当我取消选中该复选框,它也不会添加类,因为它应该。

我究竟做错了什么?

编辑:这是我的HTML澄清。

<input id="foreign_checkbox" type="checkbox" /> <span id="additional_foreign">Click Me</span>

--------------解决方案-------------

尝试使用$('#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>

问题是,代码不连续运行,只有当页面加载,当所有的箱子都选中。 您需要一个触发,当复选框被选中或取消选中一个动作,它增加了一个动作或一个类的按钮:

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

分类:JavaScript的 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.803 (s). 10 q(s)