Дублируется значение в массиве
есть такой код:
$(function() { function buildJSON($li) { var subObj = { "name": $li.contents().eq(1).text().trim() }; $li.children('ul').children().each(function() { if (!subObj.children) { subObj.children = []; } subObj.children.push(buildJSON($(this))); }); return subObj; } var obj = buildJSON($(".dd-list").children()); $('.adsadd').append(JSON.stringify(obj, null, 2)); }); И такой список: <ul class="dd-list add_new_item"> <li class="dd-item" data-id="11"> <div class="dd-handle">1</div> <ul class="dd-list"> <li class="dd-item" data-id="14"> <div class="dd-handle">1.1</div> <ul class="dd-list"> <li class="dd-item" data-id="15"> <div class="dd-handle">1.1.1</div> <ul class="dd-list"> </ul> </li> </ul> </li> </ul> </li> </ul> А на выходе мне дает это: { "name": 1, "children": [ { "name": 1.1, "children": [ { "name": 1.1.1 } ] }, { "name": 1.1.1 } ] } А должно быть по идее { "name": 1, "children": [ { "name": 1.1, "children": [ { "name": 1.1.1 } ] } |
Часовой пояс GMT +3, время: 04:13. |