我使用 Javascript 创建了一个脚本来生成段落中的随机文本。有用。当我打印到控制台时,我看到一段文本。
console.log(randParagraph(sentLength(5,8), '', ipsumText, sentLength(5,12)));
现在我想通过单击按钮来更新 html 文件中该段落的一些文本。以下是我认为应该如何完成的。
const randParagraph = (len, end, words, wordLen) =>
[...Array(len)].map(() => addCommaAfter(fullSentWithEnd,sentLength(3,8)))
.join(' ') + (end || '');
function myFunction() {
var x = (randParagraph(sentLength(5,8), '', ipsumText,sentLength(5,12)));
var y = document.getElementById("ipsum-text").textContent = "x";
}
我的假设是,如果 console.log 有效,我应该将该结果存储在一个变量中,这就是我试图对 var x 执行的操作。
然后在 var y 中我可以使用 getElementById 来更改 html 文本。
<button onclick="myFunction()">change text</button>
<p class="bodyCopy" id="ipsum-text">gimme some ipsum</p>
这是正确的方法吗?它不起作用。 我知道有人会使用 jquery 来做到这一点,但我还没有学会。我还在学习 javascript。
最佳答案
此代码有效(示例目的):
<div id="textContent">There's some text here!</div>
<script>
function updateContent() {
document.getElementById("textContent").textContent = "Newer text!";
}
updateContent();
</script>
当您调用 x
变量时,不需要使用 "
字符。此代码可以正常工作:
function myFunction() {
var x = randParagraph(sentLength(5,8), '', ipsumText, sentLength(5,12));
document.getElementById("ipsum-text").textContent = x;
}
关于javascript - textContent 不更新 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39329387/