Добавить все предметы из .each в скрытое поле - PullRequest
1 голос
/ 31 октября 2019

Я запускаю цикл, который получает текстовые значения. Я хочу поместить их в скрытое поле, но в настоящее время он добавляет только один элемент вместо всех.

$(document).ready(function() {
  setTimeout(function() {
    $(".person-name").each(function(index) {
      var names = $(this).text();
      $('.names').val(names);
    });
  }, 1000);
});

1 Ответ

1 голос
/ 31 октября 2019

Проблема заключается в том, что val() перезаписывает любое ранее существующее значение. Таким образом, будет показано только окончательное значение, установленное в цикле.

Чтобы исправить это, вы можете использовать map() для создания массива значений, а затем использовать join() при его отображении:

$(document).ready(function() {
  setTimeout(function() {
    var names = $(".item-title").map(function(index) {
      return $(this).text();
    }).get();
    $('.names').val(names.join(','));
  }, 1000);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...