id для вложенного списка
И снова, здравствуйте!
Ранее я поднимал тему относительно переименовывания строк в списке. Сама функция для переименовывания есть и работает, но проблема теперь в другом. Нужно задать каждой строке в списке, свой id, который будет обозначать степень его вложенности. Надеюсь, что я правильно выразился. Приведу пример, чего хочу добиться. <ul> <li> <span id="1">Заголовок</span> <ul> <li> <span id="1-1">Подзаголовок</span> <ul> <li> <span id="1-1-1">Подподзаголовок</span> </li> </ul> </li> </ul> </li> <li> <span id="2">Заголовок</span> <ul> <li> <span id="2-1">Подзаголовок</span> </li> </ul> </li> </ul> Через функцию $().each, пытался реализовать, но пока не получил желаемого. |
newbie guy,
:-? сервера совсем нет? <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function() { $("span").each(function(indx, span) { var id = $.map($(span).parents("li"), function(li) { return $(li).index() + 1 }); span.id = id.reverse().join("-") }); $("textarea").val($("ul").html()) //для теста }); </script> </head> <body> <ul> <li> <span>Заголовок</span> <ul> <li> <span>Подзаголовок</span> <ul> <li> <span>Подподзаголовок</span> </li> </ul> </li> </ul> </li> <li> <span>Заголовок</span> <ul> <li> <span>Подзаголовок</span> </li> </ul> </li> </ul> <textarea name="" rows="24" cols="70"></textarea> </body> </html> |
рони,
Сервер есть, Apache. Даже есть бд с таблицей, в таблице есть три поля id AUTO_INCREMENT, parent_id, title Есть скрипт на php, который выводит данные из бд в виде списка. Я так полагаю, что вы предложите в php добавлять id к каждому <span>. Пытался я это делать, но видит Бог, не хватило мне ума его там генерировать. |
Глупый был вопрос и необходимости так мудрить с id, нет.
Ведь можно просто брать id из бд и лепить его каждому span, ведь id и так уникальный. |
Часовой пояс GMT +3, время: 10:38. |