Ale*_*tti 4 html javascript dom innerhtml
考虑到我有这个div
:
<div class="ResCheckIn">
<div class="ResDtlLabel">
Check-in
</div>
Thursday, October 18, 2018
</div>
Run Code Online (Sandbox Code Playgroud)
我只是想得到字符串"Thursday, October 18, 2018"
,所以排除内部div
.如果我尝试.innerHMTML
:
document.querySelectorAll('.ResCheckIn').innerHTML;
Run Code Online (Sandbox Code Playgroud)
它返回所有内容.ResCheckIn
,包括内部div
类"ResDtlLabel"
,所以这:
<div class="ResDtlLabel tSmall tLight">
Check-in</div>
Thursday, October 11, 2018
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望不使用jQuery就能做到这一点.
一种选择是迭代childNodes
并过滤textNodes
.以下函数获取所有textNode
子节点并将其值存储在数组中.
const nodes = document.querySelector('.ResCheckIn').childNodes;
const texts = [].reduce.call(nodes, function(ret, el) {
if ( el.nodeType === 3 ) {
ret.push(el.nodeValue.trim());
}
return ret;
}, []);
Run Code Online (Sandbox Code Playgroud)
texts
是一个textNode
s内容的数组.
归档时间: |
|
查看次数: |
276 次 |
最近记录: |