Показать сообщение отдельно
  #10 (permalink)  
Старый 05.06.2022, 12:24
Аспирант
Отправить личное сообщение для Judgin Посмотреть профиль Найти все сообщения от Judgin
 
Регистрация: 31.05.2021
Сообщений: 32

Сообщение от рони Посмотреть сообщение
Judgin,
попробуйте локализовать проблему, два условных массива типа смотри #4

что должно получится в итоге(html) и тоже покороче.
на всякий случай в map есть индекс, может вам его нужно использовать что-бы вывести второй массив?
arrFinal.map(function (item, index)
Понял как через индекс выводить второй массив. Но если выводить данные из 2-х массивов, то нужного результата можно добиться если массивы сгруппированы по алфавиту (как в коде ниже). Первый массив я могу сгруппировать нужным образом, но второй массив, который содержит только ссылки, как я понимаю сгруппировать таким образом не получится. Запустив код ниже, вы увидите что должно получится в результате.

let arrTitles = [['aaa', 'abb', 'acc'], ['bbb', 'bcc', 'bdd'], ['ccc', 'cdd', 'cee']];
let arrMovies = [['http://11a.com', 'http://22a.com', 'http://33a.com'], ['http://11b.com', 'http://22b.com', 'http://33b.com'], 'http://11c.com', 'http://22c.com', 'http://33c.com'];
    let arrRU = ['А', 'Б', 'В'];
    for( k = 0; k < 3; k++) {
        id = 'sect'+ k;
	movieL = 'moviel' + k;
	let section = document.createElement("SECTION");
  	section.setAttribute("id", id);
	document.body.appendChild(section);
	let div2 = document.createElement("div");
	div2.setAttribute("id", movieL);
	div2.className = "movieL"
	document.getElementById(id).appendChild(div2);
	arrTitles2 = arrTitles[k];
	arrMovies2 = arrMovies[k];
	document.getElementById(movieL).innerHTML = '<h3>'+ arrRU[k] +'</h3><ul class="category-list clearfix">' + arrTitles2.map(function (el, index)  {
	return '<li id = '+ k +' class="category-item"><a href="https://ru.wikipedia.org//wiki/'+ el + '">' + el + '</a><img src = '+ arrMovies2[index] +'><div id="btn"><button onclick="openLink(this)" id="btn">Смотреть фильм</button></div></li>';
			}).join('') + '</ul>';
		}
Ответить с цитированием