2010-12-08 6 views
0

в моей структуре дерева при добавлении родственного (ули) (Li) (дела) диапазона диапазона имени узла (/ дела) (/ li) ..... .......... это strucutre происходит на одном уровне, когда я добавить ребенка, чем strucutre становится как этотполучить ребенок уль идентификатор

(ul) 
    (li) 
     (div) 
      span node name span(selected) 

     (ul id="ul1") 
     (li) 
      (div) 
       (span) child node name(/span) 
      (/div) 

     (/li) 

    (/div) 

............... ........ он продолжается до тех пор, пока не будет добавлен еще один уровень. Дело в том, что я хочу получить идентификатор дочерней ul, когда выбран родительский диапазон. получить UL1 как результат

+0

Отформатируйте разметку. – karim79 2010-12-08 10:05:46

ответ

0

Если UL является потомком пролете (который, как я понимаю эту проблему), вы можете сделать это:

$("span").click(function() { 
    alert($(this).find("ul").attr("id")); 
}); 

Если UL всегда следующий брат, вы можете использовать .next:

$(this).next("ul").attr("id"); 
0

При его выборе вы можете захватить его, например:

$("span").click(function() { 
    var ulID = $(this).siblings("ul").attr("id"); 
}); 

В вашем случае это появляется быть родным братом, поэтому .siblings() будет уместным.

0

для меня это похоже, что вы хотите найти первый ul как ребенок родителя ul.

Так попробуйте это:

$('ul').click(function() { 
    console.debug($(this).find('ul').attr('id')); 
}); 
+0

`.attr (" attribute ")` уже получает атрибут первого элемента в наборе, не нужно добавлять сюда шаг :) – 2010-12-08 10:08:06

Смежные вопросы