HTML:
<div class = "boardtitle">
<text>LAST SCORE: </text>
<div id="lastscore"></div>
</div>
JAVASCRIPT:
function lastScore(num){
document.getElementById('lastscore').innerText = num;
}
假设有lastScore(3);
之类的通话,我只想在HTML页面中查看LAST SCORE:
旁边的数字3,我该如何替换它?
提前致谢
答案 0 :(得分:1)
正如您对问题的评论中所述,您尚未使用innerHTML
,但我认为您无法使用innerText
。你走了:
function lastScore(num){
var el = document.getElementById('lastscore');
el.appendChild(document.createTextNode(num));
}
HTML元素中的纯文本也是DomNode
,它是一种特殊类型,TextNode
,只包含文本而没有标记。 document
对象还有一个创建此类节点的方法document.createTextNode('some string')
,它创建TextNode
就像任何其他常规类型的节点一样。因此,您可以使用自定义内容创建TextNode,然后将其附加到元素中。
更新:我没有完全正确地提出您的问题:如果您想将数字放在 LAST SCORE:文本旁边,请使用相同的JS代码,但将ID放在{{ 1}}包含 LAST SCORE:的元素,并删除<text>
答案 1 :(得分:0)
如果您只需要在<text>
元素值之后附加数字,则可以将lastscore
ID添加到<text id="lastscore">LAST SCORE: </text>
元素,无需使用额外的 div < / strong>元素<div id="lastscore"></div>
function lastScore(num){
document.getElementById('lastscore').textContent += num;
}
lastScore(3);
<div class = "boardtitle">
<text id="lastscore">LAST SCORE: </text>
</div>
根据评论:然后使用textContent
,看看它与innerHTML或innerText的区别在于https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent
答案 2 :(得分:-2)
使用span
代替div
。你应该得到想要的结果。
<div class = "boardtitle">
<text>LAST SCORE: </text>
<span id="lastscore"></span>
</div>
function lastScore(num){
document.getElementById('lastscore').innerText = num;
}
当您致电LAST SCORE:
lastScore(3);
旁边的号码