The structure is as follows
<div id="1" data-level="0">Комментарий</div> <div id="3" style="padding-left:20px" data-level="1">Ответ</div> <div id="4" style="padding-left:40px" data-level="2">Ответ на ответ</div> <div id="5" style="padding-left:40px" data-level="2">Ответ на ответ</div> <div id="7" style="padding-left:60px" data-level="3">Ответ на ответ на ответ</div> <div id="8" style="padding-left:60px" data-level="3">Ответ на ответ на ответ</div> <div id="6" style="padding-left:40px" data-level="2">Ответ на ответ</div> <div id="2" data-level="0">Комментарий</div> How to find in this structure, let's say that the id = '8' element has its parent element div with id = '5'.
Attempts to solve the problem:
$('div[data-level]').each(function(){ var t = $(this), level = t.attr('data-level'), parent = $('div[data-level="'+(level-1)+'"]').attr('id'); //parent = $('div[data-level="'+(level-1)+'"]').prev().attr('id'); //parent = $(this).('div[data-level="'+(level-1)+'"]').prev().attr('id'); //parent = t.prev('div').attr('id'); if ( level > '0' ) { t.attr( "data-parent", parent ); t.html( 'Рельный ID:'+ t.attr('id') + ' Родительский:'+ parent ); } });
Как в этой структуре найти допустим, что у элемента id='8' родительский элемент это div с id='5'.- ONET is not a parent in your example - dizballanze