假设我具有以下结构:

<div id="divid1">
  <div id="divid2">
    <div id="divid3">
    </div>
    <div id="divid4">
    </div>
  </div>
  <div id="divid5">
   </div>
</div>


上面的代码仅是说明问题的示例,因此无需过多关注。

现在假设我有以下jQuery:

$("#divid1").click(function(){});


现在,我要做的是以下内容:


当触发此事件时(即用户单击div内ID为divid1的div)告诉我当前所在的div的ID。当我说他们所在的ID时,是指他们实际单击的div的ID ,即使它位于divid1中。假设他们实际上在divid4中单击了。触发此事件是因为divid4divid2内部,而divid1在内部


限制条件:


除divid1之外,我不知道任何其他ID。这是因为我正在动态生成所有其他div的ID,并且无法知道有多少div或它们被称为什么。

最佳答案

尝试这个:

$("#divid1 div").click(function(){
  alert($(this).attr("id"));
  return false; // avoid parents divs if you have nested divs
});


jsFiddle here

10-08 00:14