<div id="AAAid" name="AAAname">1111</div>
<div id="BBBid" name="BBBname">2222</div>
<div id="CCCid" name="CCCname">3333</div>
<input type="button" id="DDDid" name="DDDname" value="delAll" ><br>
<input type="text" id="EEEid" name="EEEname" value="asdf">
var AAA=document.getElementById('AAAid');
var DDD=document.getElementById('DDDid');
var EEE=document.getElementById('EEEid');
console.log(AAA.nodeValue);
console.log(DDD.nodeValue);
console.log(EEE.nodeValue);
你要不就设个断点,或者console.dir(AAA),看看AAA
里面都有些什么属性。
var AAA=document.getElementById('AAAid').childNodes[0];
var DDD=document.getElementById('DDDid').childNodes[0];
var EEE=document.getElementById('EEEid').childNodes[0];
var AAA=document.getElementById('AAAid');
变量AAA
获取的是div#AAAid
这个元素节点,对于元素节点,nodeName
中保存的始终是元素的标签名,而nodeValue
中的值始终是null。所以你的控制台输出的值为null。
而你想获取的是标签<div>里所包裹的文本,可以用元素节点的textContent
属性得到,或者进一步取到元素节点div#AAAid
的子节点也就是文本节点,然后再利用nodeValue
来获取文本。