Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вывод элементов массива списком (https://javascript.ru/forum/misc/50820-vyvod-ehlementov-massiva-spiskom.html)

aj-nik 12.10.2014 20:15

Вывод элементов массива списком
 
Подскажите, как вывести значения массива списком <li>. Пробовал выводить в блоке <div id = "list"> вот так
var list = document.getElementById('list'); 
for (var i = 0; i < arr.length; i++)  {
list.innerHTML = arr[i].name + "<br>" 
};

но такой вариант выводит только одно первое значение массива.

Viral 12.10.2014 20:18

гугли, чем = отличается от +=

aj-nik 12.10.2014 20:31

да, так лучше работает. Спасибо.

aj-nik 12.10.2014 20:42

А как сделать, что бы данные массива выводилось не в блок <div>, а списком, который будет меняться в зависимости от количества элементов массива
<input id="myElement" type="text" size="40" />
   <div id="list"></div>
var xhr = new easyXDM.Rpc({
            swf: "https://discovery.gdbilet.ru/cors/easyxdm.swf",
            remote: "https://discovery.gdbilet.ru/cors/index.html"
         }, {
            remote: {
               request: {}
            }
        });
 document.getElementById('myElement').onkeypress = function() { 
            var s = document.getElementById('myElement').value;
            xhr.request({
            url: "https://discovery.gdbilet.ru/Rzhd/Train/SearchStation",
            method: "GET",
            data: { limit: 10, q: s }
         }, function(response) {  
var arr = JSON.parse(response.data); var list = document.getElementById('list');   for (var i = 0; i < arr.length; i++)  {list.innerHTML += arr[i].name + "<br>"  }; 
         });
};

Сейчас у меня при вводе новой буквы в текстовом поле в блоке <div> появляются все новые значения. А я хочу, что бы список обновлялся каждый раз, когда вводиться новая буква.

Viral 12.10.2014 21:53

aj-nik, обнуляй его каждый раз и генерируй заново

kostyanet 13.10.2014 06:46

Кроме того загруженные ключи легко кешировать чтоб не запрашивать что было уже запрошено.

kostyanet 13.10.2014 07:11

Цитата:

Сообщение от aj-nik
+ "<br>"

Интересно это зачем?

aj-nik 13.10.2014 19:41

Буду пробовать.

aj-nik 13.10.2014 19:43

Цитата:

Сообщение от kostyanet (Сообщение 335154)
Интересно это зачем?

Я думал, что для переноса строки. Видимо ошибался.


Часовой пояс GMT +3, время: 00:31.