2016-04-04 3 views
0

Я пытаюсь перевести вложенный список какВложенный список в плоский список с глубины с помощью JQuery

<ul> 
    <li>Coffee</li> 
    <li>Tea 
    <ul> 
    <li>Black tea</li> 
    <li>Green tea</li> 
    </ul> 
    </li> 
    <li>Milk</li> 
</ul> 

к

<div> 
    <div class="list-depth-1">Coffee</div> 
    <div class="list-depth-1">Tea</div> 
    <div class="list-depth-2">Black tea</div> 
    <div class="list-depth-2">Green tea</div> 
    <div class="list-depth-1">Milk</div> 
</div> 

Можете ли вы мне помочь? И этот порядок всегда один и тот же (сверху вниз)?

+0

Здесь вы должны использовать рекурсию. Здесь вы должны использовать функцию рекурсивной функции. –

+0

Черный чай и зеленый чай должны быть чаем чая? – guradio

+0

@ guradio Да, они есть. –

ответ

0

Как насчет this?

var parent = $("<div></div>"); 

$('#top li').each(function(pos,elem){ 
    var child = $("<div></div>").addClass("list-depth-" + $(elem).parents('ul').length).text(elem.childNodes[0].nodeValue); 
    parent.append(child); 
}); 

$('body').append(parent); 
+0

Спасибо. Я думаю, что это то, что мне нужно. :-) Был ли это тупой вопрос? Всегда ли результаты одинаковы? (Всегда в таком порядке?) –

+0

заказ будет таким же. Что касается вопроса, его всегда оценили, отправляете ли вы то, что вы пробовали. –