Как получить значения выбранных элементов?

Есть список отзывов в админке и для всех отзывов из списка есть чекбоксы. Не получается сформировать массив выполнить действие для нескольких элементов сразу.

var review= $('input[type="checkbox"]:checked').val();
                    $.ajax({
                      method: "POST",
                      dataType: 'json',
                      url: "/admin/index.php?route=reviews/reviews/remove",
                      data: { is_ajax: 1, token: token, review_id: review}
                    })


А здесь этот массив должен принять php

if(isset($_POST['review_id'])) {
                foreach ($_POST['review_id'] as $key => $reviewID) {
                    $this->load->model('reviews/reviews');
                    $result = $this->model_reviews_reviews->removeReview($reviewID);
                    if($result > 0) {
                        $data = [
                            'success' => 1,
                            'error' => 0,
                            'class' => 'success',
                            'message' => 'Отзыв успешно удален.',
                        ];
                    } else {
                        $data = [
                            'success' => 0,
                            'error' => 1,
                            'class' => 'error',
                            'message' => 'Произошла неизвестная ошибка. Пожалуйста, обновите страницу и попробуйте еще раз.',
                        ];
                    }
                }
            }
  • Вопрос задан
  • 51 просмотр
Решения вопроса 1
@xversus
Метод val(), если его использовать как геттер, возвращает только значение первого элемента.
Попробуйте так:
var review= $('input[type="checkbox"]:checked')
.map(function() {
   return this.value;
}).get();
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Snatch87
Битриксоид по принуждению
Добавлю 5 копеек:
много лет использую библиотеку jquery.serializejson
В описании проекта есть много вариантов использования
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы