我有几个同类的选择框。但是,当我使用jQuery数组推式方法将该类中的所有选定值作为数组获取时,它只是在每个值之前添加逗号(,)。 它工作与静态值的翅片。问题是当我从PHP数组中添加值到选择框时。 这是我的选择框代码的样子jQuery push数组插入逗号
<select name="add_purch_item1" class="add_purch_item">
<option value="">----select----</option>
<?php if(!empty($pro_list1)) { foreach($pro_list1 as $products) { ?>
<option value="<?php echo $products->sku; ?>"><?php echo $products->product_name; ?></option>
<?php } } ?>
</select>
<select name="add_purch_item2" class="add_purch_item">
<option value="">----select----</option>
<?php if(!empty($pro_list2)) { foreach($pro_list2 as $products) { ?>
<option value="<?php echo $products->sku; ?>"><?php echo $products->product_name; ?></option>
<?php } } ?>
</select>
而且我添加了一个点击功能按钮。点击时,它会将所有选定的值作为数组。这里是我的jQuery代码,
var selected = [];
$('.add_purch_item').each(function() {
selected.push($(this).val());
});
alert(selected);
而当我尝试使用静态值选择框时,它会给出正确的输出。 See here an example
我在动态值中得到这个错误的输出。那个不需要的逗号是我的问题。如何避免这种情况?我也尝试过字符串替换。
能否请您发表您的全部代码。一个小提琴的工作对诊断问题并没有什么帮助。 – 2014-12-03 08:55:11
我能看到的唯一原因是可能有一个空值 – 2014-12-03 08:56:51
您的完整代码是什么意思?哪些代码? – 2014-12-03 08:58:08