<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。
答案 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.id
到onclick
元素的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>