如何获得LI的父母

时间:2011-08-08 16:29:41

标签: javascript

您好我有一个下拉菜单,使用LI& UL标签。

例如

<ul>

         <li><a href="#">Parent 1</a>
         <ul>
            <li id = "Child 1"><a href="#">Child 1</a></li>
            <li id = "Child 2"><a href="#">Child 2</a></li>
         </ul>
         </li>
         <li><a href="#">Parent 2</a>
         <ul>
            <li id = "Child 3"><a href="#">Child 3</a></li>
            <li id = "Child 4"><a href="#">Child 4</a></li>
         </ul>
         </li>
</ul>

现在我的问题是当我点击儿童1 然后在结果div中应该显示父1:儿童1 。我怎样才能做到这一点?

谢谢。

2 个答案:

答案 0 :(得分:2)

this.parentElement().getAttribute('id');

这将解决问题

点击了this链接

所以如果方法是

function linkClick(obj)
{
    alert(obj.parentElement().getAttribute('id') + ':' + obj.innerHTML);
}

您需要做的就是将onclick事件附加到您的链接

<a onclick="linkClick(this); return false;" href="#">Child 1</a>

答案 1 :(得分:0)

<ul>

         <li><a href="#">Parent 1</a>
         <ul>
            <li id = "Child 1"><a href="#" onclick="alert(this.parentNode.parentNode.parentNode.firstChild.innerText + ':' + this.innerText)">Child 1</a></li>
            <li id = "Child 2"><a href="#">Child 2</a></li>
         </ul>
         </li>
         <li><a href="#">Parent 2</a>
         <ul>
            <li id = "Child 3"><a href="#">Child 3</a></li>
            <li id = "Child 4"><a href="#">Child 4</a></li>
         </ul>
         </li>
</ul>

原因是您单击该链接。所以你必须通过ul,到li,然后得到它的第一个客户端,这是包含Parent1的链接。