更改文本节点的值

时间:2016-12-07 12:43:33

标签: javascript dom

我想进入元素的第二个节点。这是我正在使用的功能:

FileReader

window.onload = function() { var list = document.getElementsByClassName("ms-gb") for (i=0;i<list.length;i++) { console.log(list[i]); var x = list[i].childNodes[1]; console.log(x); var x = x.nodeValue.slice(1); }; }; 返回

console.log(list[i])

<td> <a href="www.xxx.com">link</a> 0 text node I want to edit via script <span>something</span> </td> 返回字符串console.log(x)

如何摆脱0 text node I want to edit via script?切片方法似乎不起作用......

1 个答案:

答案 0 :(得分:4)

for块未包含{...},因此实际循环仅在console.log(list[i]);行上运行。

您的i变量当前等于list.length,因此list[i]undefined,而您正试图获取childNodes undefined

这是改变:

window.onload = function() {
  var list = document.getElementsByClassName("foo")

  for (i=0;i<list.length;i++) {
    console.log(list[i]);
    var x = list[i].childNodes[1];
    console.log(x);
  }
};
<td>
<a href="www.xxx.com">link</a>
text node I want to edit via script
<span>something</span>
</td>