数组的最后一个元素作为“数组”出现


Last element of an array comes as an 'Array'

>我有以下代码来获取所有选中复选框的值。令人惊讶的是,数组的最后一个元素是"数组"。

var selected = [];
$('#checkboxes input:checked').each(function(){
  selected.push($(this).attr('value'));
});

即使只选中了一个复选框,也会在数组中添加额外的元素。数组将如下所示:

selected[0]=Dove
selected[1]=Array

它有什么问题?我找不到这背后的任何原因。谁能帮忙?

网页代码

<ul id='checkboxes' class="list-style1">
 <?php foreach($brands as $row){ ?>
 <span class='checkbox-wrapper' id='<?php echo $brand; ?>'>
 <li><input type='checkbox' value='<?php echo $row['brand']; ?>'>
 <label for='<?php echo $row['brand']; ?>'><?php echo $row['brand']; ?></label>
 </li></span>
 <?php } ?>
</ul>
var checkedValues = $('#checkboxes  input:checked').map(function() {
return this.value;
}).get();

它将返回数组中复选框的选定值。

参考链接