<li id="li0" class="v1 ON"><div id="d0"><h3><a data-ltc="store-link-0" href=".?bID=2654" onclick="storeLocatorLite.showHideLi(0);return storeLocatorLite.getStoreDetails(2654, 0);"><b title="2654" class="hi">1</b>Test value<span class="distance">1.14 miles from search</span><span class="more"><i></i></span></a></h3></li>
以下JavaScript:
var list = document.getElementsByClassName("v1 ON")[0];
list.getElementsByTagName("a")[0].text
返回字符串:
1.测试值距搜索19.18英里
如何返回“测试值”?
它看起来就像你正在试图获得只是在元素本身,而不是在任何其子元素的文本。
如果是这样,则需要浏览元素的位置childNodes
并搜索“文本”节点。
var list = document.getElementsByClassName("v1 ON")[0];
var node = list.getElementsByTagName("a")[0];
var nodes = node.childNodes;
var t = "";
for (var i = 0; i < nodes.length; ++i) {
var node = nodes[i];
if (node.nodeType != 3) // TEXT_NODE
continue;
t += node.nodeValue;
}
console.log(t) // prints "test value"
<div class="v1 ON">
<a data-ltc="store-link-0">
<b title="3430" class="hi">1</b>test value
<span class="distance">19.18 miles from search</span><span class="more"><i></i></span>
</a>
</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句