我创建了一个电子邮件链接,可以自动填充正文中的必要信息。但是,当我这样做时,我会得到比我讨价还价更多的东西。
我想要“2012年3月:12-16”
我得到的是什么<B>March, 2012</B>: <FONT color=blue>12</FONT> - <FONT color=blue>16</FONT>
有没有办法在没有html标签的情况下获取innerHTML?
.value = undefined
.text = undefined
答案 0 :(得分:35)
除了较旧的IE,你需要.textContent
,IE(&lt; 9)中需要.innerText
。
所以,试试:
string = (node.textContent===undefined) ? node.innerText : node.textContent;
编辑:或者,只需使用GGG更清晰string = (node.innerText || node.textContent)
,因为undefined
是假的。
答案 1 :(得分:4)
在支持该标准的浏览器中,您可以使用textContent
代替innerHTML
。否则,您可以循环遍历下一个节点并连接它们,或者使用像jQuery这样的库为您抽象这种方法。
答案 2 :(得分:2)
如果您已经在使用jQuery,则可以使用.text():
如果你没有使用它,你应该只使用其他注释,因为仅仅为.text()方法加载所有jQuery是愚蠢的