У меня есть несколько ящиков с одним и тем же классом. Но когда я использую метод push массива jQuery, чтобы получить все выбранные значения в этом классе в виде массива, он просто добавляет запятую (,) перед каждым значением. Он работает плавниками со статическими значениями. Проблема заключается в том, когда я добавляю значения для выбора поля из массива PHP. Вот как мой выбор коробки код выглядитjQuery push array inserts comma
<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
Я получаю этот неправильный вывод в динамических значениях. Эта нежелательная запятая - это моя проблема. Как этого избежать? Я тоже попытался заменить строку.
Можете ли вы опубликовать полный код. Скрипка, которая работает, не очень полезна для диагностики проблемы. –
Единственная причина, по которой я могу видеть, может быть пустым значением –
Что вы подразумеваете под полным кодом? Какой код? –