html() & text() 忽略 \n 和 <br />

Hun*_*man 3 html javascript jquery

我不明白为什么会发生这种情况,基本上我从 Google Play 商店获得了一些应用程序的一些描述,以 JSON 的形式,现在我使用 jQuery 将描述添加到某些 div 中,而不是实际打印,它给出一个段落块并忽略 \n 或<br />标记。

var description = json.description;
alert(description);
Run Code Online (Sandbox Code Playgroud)

当我警告此描述时,如上所示,有正确的段落格式,其中包含下一行 [\n] 就像我想要的那样,但是当我使用 或 将其添加到所需的 div 时,html()text()会忽略下一行\n

$('#appName').html(description);

我尝试用标签替换下一行
,但结果仍然相同,我不知道为什么

var test = description.replace(/\s\n+/g, '<br />');
$('#appName').html(description)
Run Code Online (Sandbox Code Playgroud)

Dos*_*iir 6

适合任何正在寻找 CSS 解决方案的人。使用正则表达式执行此操作并不是必需的,因为您可以简单地添加属性white-space。如果将其设置为pre-wrap\n则会产生新行。

.show-white-space {
  white-space: pre-wrap;
}
Run Code Online (Sandbox Code Playgroud)

只需将类添加到您的<p><div>标签中即可。

https://developer.mozilla.org/de/docs/Web/CSS/white-space