首页新闻找找看学习计划

点击子元素的时候怎样才能得到父元素的id

0
悬赏园豆:10 [已解决问题] 解决于 2017-01-11 15:43

代码如下

#big{
            width:200px;
            height:200px;
            background-color: red;
            z-index:1000;
        }
        #small{
            width:100px;
            height:100px;
            background-color:blue;
        }


    <div id='big'>
        <div id='small'></div>
    </div>

$('#big').click(function(e){
    console.log(e.target.iddaim);
})

现在点击small区域的时候是出现‘small’怎么样才能扑捉到父元素的id呢 打印id为big

改个名字吧的主页 改个名字吧 | 初学一级 | 园豆:104
提问于:2017-01-10 13:05
< >
分享
最佳答案
0

你big元素本来不就是父元素吗,只是你这里发生了事件冒泡而已。

$('#big').click(function(e){

//既然你绑定的事件就是在父元素身上,那么应该先阻止事件冒泡,绑定在子元素身上加parent()即可

if(e&&e.stopPropagation){

e.stopPropagation();

}else{

window.event.cancelBubble=true;

} 

console.log(e.target.iddaim);

})

收获园豆:5
码码乎乎 | 初学一级 |园豆:195 | 2017-01-10 14:47

感谢

改个名字吧 | 园豆:104 (初学一级) | 2017-01-11 15:41

其实这个答案我用的是e.currentTarget.id

改个名字吧 | 园豆:104 (初学一级) | 2017-01-11 15:42
其他回答(5)
0

$(this).parent()

收获园豆:1
吴瑞祥 | 园豆:28770 (高人七级) | 2017-01-10 13:08
0

jq选择器有一个$(this).parent();获取父元素,然后再用父元素.attr('id')获取id

收获园豆:1
、熙和 | 园豆:1486 (小虾三级) | 2017-01-10 13:08

c除了这种jQuery的办法就没有别的办法了?

 

支持(0) 反对(0) 改个名字吧 | 园豆:104 (初学一级) | 2017-01-10 13:30

@小码农雯: 不用jq的话, 用js 也可以,document.getElementById('small').parentNode.id

支持(1) 反对(0) 、熙和 | 园豆:1486 (小虾三级) | 2017-01-10 14:24
0

$("#small").parent().attr("id");

收获园豆:1
让我发会呆 | 园豆:2636 (老鸟四级) | 2017-01-10 13:09
0

console.log(document.getElementById('small').parentElement.id);

收获园豆:1
nil | 园豆:660 (小虾三级) | 2017-01-10 13:47
0

$("this").parent().attr("id");

收获园豆:1
路过的鱼 | 园豆:279 (菜鸟二级) | 2017-01-10 17:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册