villiwalla
@villiwalla
HTML-верстка

Почему each в JQ возвращает коллекцию объектов?

Возвращает коллекцию объектов а не значение чекнутого элемента.
self.data.config.type_price = $('input[name=\'type_price\']').each(function (idx, elem) {
                  if($(elem).prop('checked') == true) {
                     return $(elem).val();
                  }
               });

// Так всё ок

$('input[name=\'type_price\']').each(function (idx, elem) {
                  if($(elem).prop('checked') == true) {
                     self.data.config.type_price = $(elem).val();
                  }
               });
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
@kulaeff
Front-end developer
each() используется просто для вызова функции для каждого элемента, вам же нужно найти чекнутый чекбокс и вернуть его значение, для этого надо использовать filter(). Как то так:
self.data.config.type_price = $('input[name=\'type_price\']').filter(function (idx, elem) {
  return $(elem).prop('checked')
})[0].val();
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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