Javascript根据层次结构获取节点内部文本

标签 javascript html xslt dom

我的 HTML 看起来像

<li value="0">
 <a href="#">
 <span>DATA TO GET</span><![if gt IE 6]>
 </a><![endif]><!--[if lte IE 6]><table><tr><td><![endif]-->
 <ul>
 <li value="0">
 <a onclick="return showPane('SomePane',this)" href="#">ACTIVE NODE</a>
 </li>
 </ul>

此 html 是使用 xsl 生成的。现在我想使用javascript获取span标签内的数据。我尝试了以下方法:

var nameParent =  activeTab.parentNode.parentNode.previousSibling;
window.alert(activeTab.innerHTML);
window.alert(activeTab.parentNode.parentNode.previousSibling.childNode);

这里变量activeTab被传递包含文本ACTIVE NODE的 anchor 。第一个警报给出了正确的数据,即ACTIVE NODE,但第二个警报显示未定义

我认为我正在走正确的道路和适当的元素。有人可以指出这里出了什么问题以及我还能做些什么来获取所需的数据吗?

提前致谢。

最佳答案

试试这个

var nameParent =  activeTab.parentNode.parentNode;
window.alert(activeTab.innerHTML);
window.alert(nameParent.parentNode.children[0].children[0].innerHTML);

我强烈建议在你的项目中使用 jQuery,它提供了在 dom 元素之间轻松导航的方法,例如 .find() 和 .children()、.parent 以获得更具可读性的代码。

谢谢

关于Javascript根据层次结构获取节点内部文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14744948/

相关文章:

javascript - Ajax 和状态 302

javascript - 如何在没有动画的情况下完成 scrollRight?

javascript - 将自定义 JS 按钮添加到预先存在的 div 中

c# - 如何在 C# 中使用 XSLT 将 XML 转换为 HTML?

xml - XSLT Muenchian 分组忽略特定组

xml - XSL 如何避免 NaN

javascript - 想要使用 javascript 显示和隐藏下拉菜单

javascript - 为什么我不能从两个函数内部调用该函数?

javascript - jquery如何将动态值插入数组

javascript - 嵌套列表 - 使用 Javascript 选择路径