28.07.2015, 11:32
|
Аспирант
|
|
Регистрация: 20.07.2015
Сообщений: 64
|
|
Как из массива сделать список ul>li
Доброго времени уважаемые форумчане. Подскажите пожалуйста, как можно вывести имеющийся массив в список?
Вот массив:
var link_massiv = {"fl_FIO_soc_google": "websearch_queries1",
"fl_FIO_google": "websearch_queries2",
"fl_IF_soc_google": "websearch_queries3",
"fl_IF_google": "websearch_queries4",
"fl_FIO_soc_ya": "websearch_queries5",
"fl_FIO_ya": "websearch_queries6",
"fl_IF_soc_ya": "websearch_queries7",
"fl_IF_ya": "websearch_queries8",
"email1": "websearch_queries9",
"email2": "websearch_queries10",
"tl": "websearch_queries11",
"tl_soc": "websearch_queries12",
"tl_ya": "websearch_queries13",
"tl_ya_soc": "websearch_queries14"};
Нужно получить примерно такой список, где ключ - это ссылка, а значение является обычным текстом:
<ul>
<li>
<a href="websearch_queries1">fl_FIO_soc_google</a>
</li>
</ul>
Заранее спасибо!
|
|
28.07.2015, 11:56
|
|
CacheVar
|
|
Регистрация: 19.08.2010
Сообщений: 14,231
|
|
Сообщение от malefikus13
|
как можно вывести имеющийся массив
|
Не хотел тебя расстраивать... Но это не массив. Это объект.
Создай элемент UL...
Для прохода по объекту воспользуйся
http://javascript.ru/for..in
Далее создавай элемент LI, меняй его атрибут href и innerHTML...
Добавляй его в UL...
По окончании цикла вставь тот UL d нужное тебе место...
Последний раз редактировалось ksa, 28.07.2015 в 11:59.
|
|
28.07.2015, 13:02
|
Интересующийся
|
|
Регистрация: 14.06.2013
Сообщений: 25
|
|
У меня так сработало:
$(document).ready(function(){
var link_massiv = {"fl_FIO_soc_google": "websearch_queries1",
"fl_FIO_google": "websearch_queries2",
"fl_IF_soc_google": "websearch_queries3",
"fl_IF_google": "websearch_queries4",
"fl_FIO_soc_ya": "websearch_queries5",
"fl_FIO_ya": "websearch_queries6",
"fl_IF_soc_ya": "websearch_queries7",
"fl_IF_ya": "websearch_queries8",
"email1": "websearch_queries9",
"email2": "websearch_queries10",
"tl": "websearch_queries11",
"tl_soc": "websearch_queries12",
"tl_ya": "websearch_queries13",
"tl_ya_soc": "websearch_queries14"};
var ul = document.createElement('ul');
for (elem in link_massiv){
var li = document.createElement('li');
var a = document.createElement('a');
$(a).appendTo(li);
$(a).attr('href',link_massiv[elem]);
$(a).text(elem);
$(li).appendTo(ul);
}
$(ul).appendTo('body');
});
|
|
28.07.2015, 14:08
|
Аспирант
|
|
Регистрация: 20.07.2015
Сообщений: 64
|
|
Сообщение от karssen
|
У меня так сработало:
$(document).ready(function(){
var link_massiv = {"fl_FIO_soc_google": "websearch_queries1",
"fl_FIO_google": "websearch_queries2",
"fl_IF_soc_google": "websearch_queries3",
"fl_IF_google": "websearch_queries4",
"fl_FIO_soc_ya": "websearch_queries5",
"fl_FIO_ya": "websearch_queries6",
"fl_IF_soc_ya": "websearch_queries7",
"fl_IF_ya": "websearch_queries8",
"email1": "websearch_queries9",
"email2": "websearch_queries10",
"tl": "websearch_queries11",
"tl_soc": "websearch_queries12",
"tl_ya": "websearch_queries13",
"tl_ya_soc": "websearch_queries14"};
var ul = document.createElement('ul');
for (elem in link_massiv){
var li = document.createElement('li');
var a = document.createElement('a');
$(a).appendTo(li);
$(a).attr('href',link_massiv[elem]);
$(a).text(elem);
$(li).appendTo(ul);
}
$(ul).appendTo('body');
});
|
спасибо большое! Сейчас попробую))
|
|
28.07.2015, 14:36
|
Аспирант
|
|
Регистрация: 15.05.2015
Сообщений: 41
|
|
<body>
<script>
var link_massiv = {
"fl_FIO_soc_google": "websearch_queries1",
"fl_FIO_google": "websearch_queries2",
"fl_IF_soc_google": "websearch_queries3",
"fl_IF_google": "websearch_queries4",
"fl_FIO_soc_ya": "websearch_queries5",
"fl_FIO_ya": "websearch_queries6",
"fl_IF_soc_ya": "websearch_queries7",
"fl_IF_ya": "websearch_queries8",
"email1": "websearch_queries9",
"email2": "websearch_queries10",
"tl": "websearch_queries11",
"tl_soc": "websearch_queries12",
"tl_ya": "websearch_queries13",
"tl_ya_soc": "websearch_queries14"
};
var htmlBody = document.body;
var htmlList = JSON.stringify(link_massiv)
.replace(/\{/g, '<ul>')
.replace(/\}/g, '</ul>')
.replace(/"/g, '')
.replace(/(\w+):(\w+),?/gi, '<li><a href="$2">'+'$1</a></li>');
htmlBody.insertAdjacentHTML('beforeEnd', htmlList);
</script>
</body>
|
|
28.07.2015, 18:55
|
|
Профессор
|
|
Регистрация: 30.04.2012
Сообщений: 3,018
|
|
var fragment = document.createDocumentFragment(),
i, li, link,
ul = document.createElement('ul');
for(i in link_massiv) {
li = document.createElement('li');
link = document.createElement('a');
link.href = link_massiv[i];
link.appendChild(document.createTextNode(i));
li.appendChild(link);
fragment.appendChild(li);
}
ul.appendChild(fragment);
document.body.appendChild(ul);
|
|
29.07.2015, 09:34
|
Аспирант
|
|
Регистрация: 20.07.2015
Сообщений: 64
|
|
Да, у меня все сработало. Проблема решена. Спасибо друзья - выручили!
|
|
|
|