我有一个带有一系列复选框的表单。我想警告用户,在他们点击提交之后,如果所有的复选框都未选中的话。我使用以下代码来报告复选框的所有值:
$('[id^=leg_rider]').filter(':checked');这似乎是可行的。但是,当我尝试检查返回的对象是否为空时,它似乎不起作用。这就是我正在尝试的:
$("#set_pref_submit").click(function() {
var legchecked = $('[id^=leg_rider]').filter(':checked');
if (!legchecked){ alert("no riders")};
});如有任何建议,欢迎光临。谢谢!
发布于 2012-08-03 07:56:25
您可以使用jQuery对象的length属性:
$("#set_pref_submit").click(function() {
var legchecked = $('input[id^=leg_rider]:checked').length;
if (legchecked){ alert("no riders")};
});发布于 2012-08-03 07:56:16
工作演示:http://jsfiddle.net/MrkfW/
试试这个:也使用.change应用程序接口,这样它就可以保持跟踪:)
接口名:http://api.jquery.com/change/
$("input[type='checkbox'][id^=leg_rider]").change(function(){
var a = $("input[type='checkbox'][id^=leg_rider]");
if(a.length == a.filter(":checked").length){
alert('all checked');
} else {
alert('not all checked');
}
});发布于 2012-08-03 08:11:29
试试这个:
我的html:
<input id="chkbx_0" type="checkbox" class="checkbox" name="c_n_0" checked="checked" />Option 1
<br/><input id="chkbx_1" type="checkbox" class="checkbox" name="c_n_1" />Option 2
<br/><input id="chkbx_2" type="checkbox" class="checkbox" name="c_n_2" />Option 3
<br/><input id="chkbx_3" type="checkbox" class="checkbox" name="c_n_3" checked="checked" />Option 4
<br/><br/>
<input type="button" value="Click me" class="testall"/>我的JQuery代码:
jQuery(".testall").click(function () {
if (jQuery(".checkbox:checked").length == 0) { alert("no riders"); }
});现场示例:http://jsfiddle.net/webwarrior/NJwv4/9/
这将为您提供仅选中某些复选框的选项。
hth,肖恩
https://stackoverflow.com/questions/11787455
复制相似问题