@XenK

Перебрать элементы на странице и массива?

Написал функцию, которая на входе получает массив чисел (13400, 23124, 43242):
function Sum(ysums) {
    for (var ys in ysums) {
        var ysz = ysums[ys];
        $('.y-sums h1 span').each(function () {
            $(this).text(ysz);
        });
    }
}

Необходимо поместить числа по порядку, в span.
<div class="y-sums">
    <h1>sum1 – <span>0</span></h1>
    <h1>sum2 – <span>0</span></h1>
    <h1>sum3 – <span>0</span></h1>
</div>

В чём может быть ошибка?
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
@nikosias
https://jsfiddle.net/nyebtb1x/
Не срабатывает что то джавасккрипт но код типа такого.
var ysums=[123,456,789];
function Sum(ysums) {
	for(var i=0;i<ysums.length;i++){
  	$('.y_sums h1 span').eq(i).text(ysums[i]);
  }
}
Sum(ysums);


Хотя в данном случае может лучше удалять все h1->span создавать снова по количеству переменных?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
Вы бы описали что у Вас происходит, но думаю, что все спаны имеют текст равный последнему элементу массива. Так как при каждом прохождении по нему, вы проходитесь по всем span и перезаписываете.
Надо пойти иначе. Перебирать span через each(index), внутри ее имея номер и вставляя значение используя номер элемента и ключ массива.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы