如何使用JavaScript获取段落内的文本

14
我正在尝试获取

标签内的文本


 <p id="paragraph">Some text</p>

我希望能够像这样将文本存储在JavaScript变量中

 var text = "Some text";
我读到我必须添加 <\p>。
 var text = document.getElementById("paragraph").innerHtml;

但是变量的值为NULL或未定义,我也这样做了。

 var text = document.getElementById("paragraph")[0].innerHtml;

我也曾经遇到同样的问题!

3个回答

21
在你的例子中,你使用了错误的属性名称,必须使用innerHTML请注意 - 大小写敏感,应为HTML而不是Html),而不是innerHtml
var text = document.getElementById("paragraph").innerHTML
                                                     ^^^^

6
你应该使用 .textContent 来获取文本,以确保在文本变量中不会得到额外的标记。
var paragraph = document.getElementById("paragraph");
var text = paragraph.textContent ? paragraph.textContent : paragraph.innerText;//IE uses innerText

innerHTML返回的是HTML,正如其名称所示。通常情况下,为了检索或写入元素内的文本,人们使用innerHTML。应该改用textContent。因为文本不会被解析为HTML,所以性能更好。此外,这也避免了XSS攻击向量。

https://developer.mozilla.org/en-US/docs/Web/API/Node.textContent


4
var text = document.getElementById("paragraph").innerHTML;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接