使用jquery选中多个复选框
我正在尝试找到最简单的方法来获取选中的复选框 这是我的剧本:使用jquery选中多个复选框,jquery,checkbox,selection,Jquery,Checkbox,Selection,我正在尝试找到最简单的方法来获取选中的复选框 这是我的剧本: $(document).ready(function() { $("input[name='chkTextEffects']").change(function() { if ($("#cbSolid").is(':checked') == true) { alert('Solid'); } else if ($("#cbOutline").is(':checked')
$(document).ready(function() {
$("input[name='chkTextEffects']").change(function() {
if ($("#cbSolid").is(':checked') == true) {
alert('Solid');
} else if ($("#cbOutline").is(':checked') == true) {
alert('Outline');
} else if ($("#cbSolid", "#cbOutline").is(':checked') == true) {
alert('SolidOutline');
} else if ($("#cbSolid", "#cbOutline").is(':checked') == false) {
alert('No Effects');
}
});
});
HTML:
实心
轮廓
我不确定这行如果($(“#cbSolid”,“#cbOutline”).is(':checked')==true)
或者我应该使用bind
来实现它。为什么不这样做:
$("#checkboxId").attr("checked") == "checked";
您可以像这样使用选择器来获取具有指定名称的所有复选框:
$("input[name='chkTextEffects']:checked")
下面是我创建的一个示例,它演示了我认为您正试图实现的目标:
$('#getCheckboxesButton').live('click', function(event) {
var checkboxValues = [];
$('input[type="checkbox"]:checked').each(function(index, elem) {
checkboxValues.push($(elem).val());
});
alert(checkboxValues.join(', '));
});
如果有帮助,请告诉我。它基本上使用“:checked”jQuery选择器来检索选中的复选框,然后遍历它们的值并将其打印出来。jQuery
$('input:checkbox:(:checked)').each( function() {
// your code here
})
@SuperPomodoro是的,这正是我需要的。cheel:)此外,您可以使用:not选择器检索未选中的复选框。jQuery选择器(和新的CSS3伪选择器)允许优雅的DOM查询;但是你是如何从这个问题中得到完整的答案的呢LOL@SuperPomodoro-不要点击按钮,我怎样才能选择每个复选框。@编码员,你的问题已经有答案了<代码>$(“输入[name='chkTextEffects'])代码>每次您的一个复选框更改状态时,都会触发一个更改事件。根据您的演示,看起来您正在使用复选框模拟单选按钮的行为。您的if/else-if语句似乎确认您只查找单个选定元素。您可能想改用单选按钮。@DanA不,我想选择两个元素,有时也可能是一个。因此,基于此,我需要选中一个。
$('input:checkbox:(:checked)').each( function() {
// your code here
})