如何从锚子中获取父div id

时间:2015-05-05 07:30:58

标签: javascript html

<div class="wizard-rules" id="wizard-rule">If <a href="#" onclick="alert(this.id)" id="dashboard-rule-2" class="highlight">ALL DASHBOARD</a> encounters an error</div>

这里我想在锚标记上点击div wizard-rule。我怎么能这样做?

现在,锚标签只是获取锚标签本身的id。但不是其父元素的id。

4 个答案:

答案 0 :(得分:14)

使用parentNode访问id

<div class="wizard-rules" id="wizard-rule">If <a href="#" onclick="alert(this.parentNode.id)" id="dashboard-rule-2" class="highlight">ALL DASHBOARD</a> encounters an error</div>

答案 1 :(得分:2)

您可以像这样获得父ID:

window.onload = function(){
    var element = document.getElementById('child').parentNode;
    alert(element.id);
}

或者你可以使用JQuery来做到这一点:

var id = $('child').parent().prop('id');

答案 2 :(得分:1)

第一种方法 parent()方法遍历DOM树中每个元素的直接父级。 Parent()在DOM上进行单一级别。

$('a').click(function(){
  alert($(this).parent().prop("id"));
}); 

并从HTML

中的Anchor标记中删除onclick

第二种方法

parentNode属性返回指定节点的父节点,作为Node对象。 在您的HTML中添加this.parentNode.idonclick元素的anchor事件:

<a href="#" onclick="alert(this.parentNode.id)" id="dashboard-rule-2" class="highlight">ALL DASHBOARD</a>

答案 3 :(得分:0)

请尝试这样可以正常工作:

     <div class="wizard-rules" id="wizard-rule">If <a href="#" onclick="alert($(this).parent().attr('id'))" id="dashboard-rule-2" class="highlight">ALL DASHBOARD</a> encounters an error</div>