2010-12-03 17 views
1

divなどのdivにdivを追加できるように動的システムを作成しました。 divをクリックすると、そのIDを知りたいと思います。あなたはDIV4で、それはdiv_4とdiv_1を返しますが、私は唯一のリターンとしてdiv_4たい例えばクリックすると子どものIDを取得する

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

: 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の私は、このようなスクリプトを作ってきました。 誰かが私を助けることができますか?私は親と子供について何かを読んだが、私はそれを理解することはできない。 よろしくお願いします。フランク

答えて

4

あなたはとイベントのバブリングを停止することができます:

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

クリックイベントのみ最高層/ DIVに到達する必要があります。

+0

これは良い答えのために、私は非常にありがとう! – Frank

0

すべての要素にクリックイベントを追加しないでください。すべてのdivのコンテナにワンクリックイベントを追加し、jqueryイベントオブジェクトを使用して、クリックされたターゲット要素を取得します。

関連する問題