我们有一个默认自动生成的显示消息,但可能会被来自 url 的 GET vars 覆盖。由于我们需要将消息视为用户输入,因此必须对其进行转义以进行显示。但是,我们希望保留包含换行符的能力。
Newlines as<br>
这不起作用,因为转义 HTML 会破坏<br>
标签。
换行符,因为\n
我不知道如何\n
渲染为换行符。我认为把它放在标签中会正确呈现,但没有运气:http: //jsfiddle.net/7L932/
我们有一个默认自动生成的显示消息,但可能会被来自 url 的 GET vars 覆盖。由于我们需要将消息视为用户输入,因此必须对其进行转义以进行显示。但是,我们希望保留包含换行符的能力。
Newlines as<br>
这不起作用,因为转义 HTML 会破坏<br>
标签。
换行符,因为\n
我不知道如何\n
渲染为换行符。我认为把它放在标签中会正确呈现,但没有运气:http: //jsfiddle.net/7L932/
转义 HTML,然后替换\n
为<br>
.
如果您想使用 \n,我会为您修复您的小提琴http://jsfiddle.net/hr3bg/
你所做的或多或少都很好,除了你应该\n
在你的 html 中放置字符(换行符),而不是转义序列(Prinzhorn 所说的也很有意义,所以我会支持他)。
将包装器 html css 设置white-space: pre-line
为对我有用。它启用了 \n 字符的换行功能
您的理论听起来不错,但\n
不是 HTML 认可的插入新行的方式。它要么显式出现(因为我已插入新.linebreaks
元素)作为标记中的文字返回,要么,如果您使用一些可以识别的中间脚本语言(如\n
JS),那么就这样做(就像我已经.linebreaks
使用我插入的 jQuery 代码完成您的第一个操作。
请参阅我对您的示例的调整:http: //jsfiddle.net/barney/7L932/2/