请问如何在html中输出字符串中的换行符

我在后台获取了一段字符串输出到前台的<p>标签中,但是字符串中有换行符'n',我想同样输出换行的效果。请问应该如何处理这段字符串呢?我把'n'替换成了<br/>还是不行,原样输出了。
谢谢大家

阅读 21.4k
6 个回答

有两中方式,一是设置 white-space: pre;,空白会被浏览器保留。或者使用

<pre>
    我是换行字

    符串
</pre>

,pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。

换行符不是\n么?

如果你这种情况,换成</p><p>

根据你的描述,你应该是需要pre标签吧.

js中,可以使用 . innerHTML = 'It<br />works' 来输出 html;如果是 jQuery,则使用 $.fn.html('It<br />works')!
==== 以为是 PHP 输出
使用 htmlentities 函数输出替换后的内容!

图片描述

这样是可以的,题主最好把代码贴出来才知道是什么原因

\n在pre中有效

pre.innerHTML = 'hey,\nman'
// hey,
// man

在p中可以通过replace

let str = 'hey,\nman'
str = str.replace(/\n/, '<br>')
p.innerHTML = str
// hey,
// man
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏