我有一段JavaScript,可以用来更新HTML:

var StringContent = ({
    "a": 'Some String a',
    "b": 'Some string b',
    "c": 'Some string c',
});


然后我希望每个字符串a,b,c通过以下方式显示在新行中:

document.getElementById("overlaycontent").innerHTML = (
    StringContent.a + '\n' +
    StringContent.b + '\n' +
    StringContent.c,
    )


我现在得到的只是一行中的所有内容。如何在文本中创建新行而不添加更多div?我也尝试了\r,但这也无济于事。我看了看文档,但一直说要使用\n

最佳答案

您应将\n替换为<br>,因为innerHTML接受HTML字符串(在HTML中,\n与相邻空格合并,但不会产生回车符,但MaxArt指出的样式为white-space:pre-wrap的元素除外) :

document.getElementById("overlaycontent").innerHTML = (
    StringContent.a + '<br>' +
    StringContent.b + '<br>' +
    StringContent.c,
)

关于javascript -\n未在javascript中的文本之间创建新行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23612893/

10-10 00:11