2010-12-03 4 views
1

Я создал динамическую систему, чтобы вы могли добавлять divs в divs в divs и т. Д. Теперь я хочу узнать идентификатор div, когда я нажимаю на него. Я сделал сценарий, как это: HTML:Получить идентификатор детей

<div id="div1" class="mod"> 
    <div id="div4" class="mod"> 
    <div id="div5" class="mod"></div> 
    </div> 
</div> 
<div id="div2" class="mod"> 
    <div id="div6" class="mod"> 
    <div id="div7" class="mod"></div> 
    </div> 
</div> 

Jquery:

$('.mod').click(function(){ 
    var id = $(this).attr('id'); 
    alert(id); 
}); 

Если нажать, например, на div4 он будет возвращать div_4 и div_1, но я только хочу div_4 как возвращение. Может кто-нибудь мне помочь? Я читал кое-что о родителях и детях, но я не могу понять это. С уважением Фрэнк

ответ

4

Вы можете остановить бульканье события с:

$('.mod').click(function(event){ 
    var id = $(this).attr('id'); 
    alert(id); 
    event.stopPropagation(); 
}); 

Клик-событие, то должен достичь только самого высокого уровня/дел.

+0

Для хорошего ответа это было, что я очень хотел поблагодарить вас! – Frank 2010-12-03 13:16:43

0

Не добавляйте события щелчка в каждый элемент. Добавьте событие с одним кликом в контейнер всех разделов, а затем используйте объект события jquery, чтобы получить целевой элемент, который был нажат.