我有一个带有复选框的表单,输入存储在一个数组中:
<input type="checkbox" name="lineup[]" value="1">Tom</input>
<input type="checkbox" name="lineup[]" value="2">David</input>
<input type="checkbox" name="lineup[]" value="3">Sarah</input>
Run Code Online (Sandbox Code Playgroud)
使用jQuery我想找到勾选/选中的复选框:
var total=$(this).find('input[name=lineup]').serialize();
alert(total.length);
Run Code Online (Sandbox Code Playgroud)
但是总数总是输出0.我做错了什么?
谢谢,
艾伦.
MrC*_*ode 42
:checked在选择器中使用,不要序列化它,只需获取长度.
var total=$(this).find('input[name="lineup[]"]:checked').length;
Run Code Online (Sandbox Code Playgroud)
也可以[]在选择器中使用,因为您的复选框[]在名称中使用.正如@Felix Kling指出的那样,它是名称的一部分,所以你必须明确指定[].
试试这个
alert($('input[name=lineup]:checked').length);
Run Code Online (Sandbox Code Playgroud)
你的方式
$(this).find('input[name=lineup]:checked').length;
Run Code Online (Sandbox Code Playgroud)
怎么样:
var checkedBoxes = $('input[name=lineup]:checked').length;
alert(checkedBoxes);
Run Code Online (Sandbox Code Playgroud)