使用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。
答案 0 :(得分:0)
试试这样:
function myFunction() {
var x = (randParagraph(sentLength(5,8), '', ipsumText,sentLength(5,12)));
document.getElementById("ipsum-text").innerHTML = x;
}
请注意,您不希望在x
周围使用引号答案 1 :(得分:0)
此代码有效(示例目的):
<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;
}