Как из массива сделать список 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>
Заранее спасибо! |
Цитата:
Создай элемент UL... Для прохода по объекту воспользуйся http://javascript.ru/for..in Далее создавай элемент LI, меняй его атрибут href и innerHTML... Добавляй его в UL... По окончании цикла вставь тот UL d нужное тебе место... |
У меня так сработало:
$(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');
});
|
Цитата:
|
<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>
|
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);
|
Да, у меня все сработало. Проблема решена. Спасибо друзья - выручили! :)
|
| Часовой пояс GMT +3, время: 06:39. |