@aljo222
В процессе обучения веб-разработке

Как разбить json на два массива и вывести каждый как элемент li?

Здравствуйте!
На странице производиться ajax-подгрузка данных о товаре в модальное окно. Раньше подгружалось просто строкой, теперь нужно разбить на элементы списка ul.

Ответ приходит в таком виде:
{"toys":"машинка;кукла;мяч","gifts":"конструктор;набор;мячик;набор"}


Как разбить ответ на два одномерных массива и каждый из элементов оформлять в виде:
<li>машинка</li>
<li>кукла</li>
<li>мяч</li>

и вставить каждый из массивов в ul с соответствующими id (toys, gifts)?

Заранее спасибо!
  • Вопрос задан
  • 258 просмотров
Решения вопроса 1
MaKvc
@MaKvc
Отчаянный веб-разработчик
<ul class="toys"></ul>

<ul class="gifts"></ul>


function toListElements(jsonStr) { 
  function normalize(str) {
    return str.split(';').map(function(item) {
      return '<li>' + item + '</\li>';
    }).join('');
  }
  
  const jsonObj = JSON.parse(jsonStr);
  
  document.querySelector('.toys').innerHTML = normalize(jsonObj['toys']);
  document.querySelector('.gifts').innerHTML = normalize(jsonObj['gifts']);
}

toListElements('{"toys":"машинка;кукла;мяч","gifts":"конструктор;набор;мячик;набор"}');
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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