Как в цикл передать переменную c номером ul, чтобы из него вывелось одно значение в нужный ul
Есть некий цикл, в котором крутится три значения из output
const { output } = JSON.parse(response);
$('.hs-categ').each(function (i) {
var pagcat = $(this).find('.pagcat');
output[i].forEach(function (page) //перебор и вывод
{
const pag = getItemPAG(page);
pagcat.empty().append(pag); //очищаем старую и добавляем новую выборку
});
});
function getItemPAG(page)
{
const pagHTML = `
<div id="pagelink">${page}</div>`;
return pagHTML;
}
Затем эти три значения отравляются в ul
<div class="hs-categ"><?= $cat[0] ?>
<ul class="pagcat">
</ul>
</div>
<div class="hs-categ"><?= $cat[1] ?>
<ul class="pagcat">
</ul>
</div>
<div class="hs-categ"><?= $cat[2] ?>
<ul class="pagcat">
</ul>
</div>
Проблема в том, что когда я хочу с помощью ajax прогнать по этому же циклу одно значение и отправить например в третий по счету блок, то это значение попадает в первый блок.
Я пытался доработать цикл и с помощью переменной var arr = 3;
(число будет меняться мной в зависимости от нумерации блока ul) дать понять циклу в какой блок вывести единственное значение output, которое там крутится.
$('.hs-categ').each(function (i) {
var arr = 3;
var pagcat = $(this).find('.pagcat');
output[i].forEach(arr, function (page, e) //перебор и вывод
{
const pag = getItemPAG(page);
pagcat.empty().eq(e).append(pag); //очищаем старую и добавляем новую выборку
});
});
Как можно вывести единственное значение из цикла в блок так, чтобы значение попадало в ul, нумерацию которого я укажу в var arr = 3;
?
Источник: Stack Overflow на русском