javascript - 我无法在 javascript 中使用 '\n",我不知道为什么它不起作用

标签 javascript html

据我所知,写新行是“\n”,所以我尝试了很多次但没有成功。这是我的源代码和结果屏幕截图

var ary3 = new Array('seven','eight', 'nine');
for (var i =0; i<ary3.length ; i++){
    document.getElementById('demo3').innerHTML += i+"'\nth element\n[enter image description here][1] : " + ary3[i]+"\n";
}
<h1>Show me the array object's entry</h1>
<div id = 'demo3'></div>
<br>

最佳答案

HTML 中的空白通常最多会折叠为一个空格。示例

<div>a
b        c</div>

将显示为 a b c

你有几个选择

  1. 使用pre

    <pre>a
    b</pre>
    

    将显示为

    a
    b
    
  2. 使用white-space: pre; div 上的 CSS

     <div style="white-space: pre;">a
     b</div>
    

    会打破换行符

  3. 插入<br/>对于“\n”,如

     var someString = "a\nb\nc";
     someElement.innerHTML = someString.replace(/\n/g, "<br/>");
    

对于循环的具体示例,您还可以选择插入单独的元素

function insertDivWithText(parent, text) {
   var div = document.createElement("div");
   div.appendChild(document.createTextNode(text));
   parent.appendChild(div);
}

var demo3 = document.querySelector("#demo3");
var ary3 = ['seven','eight', 'nine'];
for (var i = 0; i < ary3.length ; ++i) {
   var div = document.createElement("div");
   insertDivWithText(demo3, i + "th element");
   insertDivWithText(demo3, "[enter image description here][1] : " + ary3[i]);
}
<h1>Show me the array object's entry</h1>
<div id = 'demo3'></div>
<br>

另请注意,使用 .innerHTML使用用户数据可能会让您面临脚本漏洞。考虑使用document.createTextNodeelement.textContentelement.innerText

关于javascript - 我无法在 javascript 中使用 '\n",我不知道为什么它不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38693346/

相关文章:

javascript - CKEditor inline - 添加内容时对齐的底部不会移动。

javascript - 如何检测框架 url 何时更改?

html - 如何更改事件切换的文字颜色

javascript - 如何通过每次从所有行中取一个值来获取带有循环的二维数组中值的所有组合?

javascript - 将 jQuery 动画转换为 React Hook

javascript - 我如何结合谷歌地图和基于主干 View 的信息框

HTML/CSS 水平文本换行

javascript - 为用户解析 beforeDelete

javascript - 选定的列表项颜色更改

javascript - 将元素附加到列表会重置滚动位置