Javascript. Вывод информации в цикле.

F
На сайте с 06.02.2012
Offline
124
6567

Здравствуйте!

Вопрос по Javascript.

Необходимо в цикле размещать получаемую информацию в столбик.

Цикл внутри функции, поэтому document.write не годится.

А document.getElementById().innerHTML очищает блок перед каждой записью и остаётся только последняя.

Как быть?

Использовал переменную в качестве идентификатора. Вот так

{ for (var n = 1; n <= 25; ) 

document.getElementById(n).innerHTML= (бла... бла... бла);
n++ ;
}

Но опять накладка. Работают только нечётные n. При чётных зависает цикл. Т.е, если написать n+2 , то показывает записи через одну и в столбик.

Может есть какие другие функции вывода для циклов?

FollowLocation
На сайте с 19.07.2013
Offline
12
#1


var Temp = document.getElementById("elem").innerHTML;
for (var n = 1; n <= 25; n++) {
Temp += "\n<br>бла... бла... бла";
document.getElementById("elem").innerHTML = Temp;
}

Пример

F
На сайте с 06.02.2012
Offline
124
#2

Понял. Спасибо.

Сейчас попробую...

---------- Добавлено 18.09.2013 в 21:10 ----------

ОК!

Всё отлично работает!!!!!!

doctorpc
На сайте с 12.07.2009
Offline
112
#3
fordzon:

А document.getElementById().innerHTML очищает блок перед каждой записью и остаётся только последняя.

Кроме innerHtml есть еще, например,

jquery append()

это если не хотите весь контент грузить сразу, а шаг за шагом.

Вариант без jquery, думаю, тоже можно найти без проблем ссылка

rammlied
На сайте с 13.04.2011
Offline
56
#4

Innerhtml это такая же переменная как и var q=5. Хотите чтобы не очищалось, используйте +=

делаю СДЛы, получаются ГСы )
F
На сайте с 06.02.2012
Offline
124
#5
rammlied:
Innerhtml это такая же переменная как и var q=5. Хотите чтобы не очищалось, используйте +=

В смысле n+=1 что ли? Пробовал. Не помогает.

---------- Добавлено 18.09.2013 в 22:06 ----------

блин... Понял!!

document.getElementById("3").innerHTML +=

Помогло!

Отлично! Спасибо!

:)

Bitman
На сайте с 05.07.2009
Offline
112
#6

getElementById("3") - стрёмно это выглядит. Id в DOM луше цифрами не задавать, здаётся мне.

Северный лес (https://euro-vagonka.by) DREW (https://drew.by) AvtoDrive (https://avtodrive.by)
rammlied
На сайте с 13.04.2011
Offline
56
#7
fordzon:
В смысле n+=1 что ли? Пробовал. Не помогает.

---------- Добавлено 18.09.2013 в 22:06 ----------

блин... Понял!!
document.getElementById("3").innerHTML +=
Помогло!
Отлично! Спасибо!
:)

это основа JS и работы с DOM

//HTML

<div id="qwerty">Privet</div>

//JS

alert (document.getElementById("qwerty").innertHTML); //выскочит окошко с текстом Privet

document.getElementById("qwerty").innertHTML +=" VSEM";

alert (document.getElementById("qwerty").innertHTML); //выскочит окошко с текстом Privet VSEM

//и в самой разметке теперь будет

<div id="qwerty">Privet VSEM</div>

Ну да, только цифры в качестве айдишников лучше не использовать.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий