如何使用jQuery将<br>字符串转换为实际的HTML <br>?

Ton*_*y M 5 html jquery

也许问题的措辞不正确,但这是我正在尝试用jQuery做的事情:

初始点:

This is<br><br> some<br> <br> <br> <br> content
Run Code Online (Sandbox Code Playgroud)

最终目标:

This is

some



content
Run Code Online (Sandbox Code Playgroud)

说明:

更具体地说,我在使用div中的内容时遇到问题,然后在编辑时变成文本区域,然后在完成编辑时返回到div.数据库必须在保存时存储<br>标签...似乎textareas使用换行符(\n)并返回(\ r \n),因此这些(<br>,\n和\ r \n)之间的转换正在变为对我来说有点问题.

有没有一种正确的方法来处理多个浏览器?或许可能更容易一直使用textarea(而忘记div)?当我尝试在div和textarea之间移动内容然后回到div时,时髦的东西开始发生间隔.

更多细节编辑:

如果用户单击编辑并将原始div转换为textarea,则他们开始进行更改并单击"完成",但决定取消编辑并恢复为旧内容.textarea转回div,旧内容(存储在隐藏的div中)取代了用户编写的内容.因此来回内容.

编辑:

很棒的反馈,谢谢大家!我不想使用whtiespace css,因为这需要在已经开发的网站上工作,并且需要在每个页面上保存内容的所有div上进行编辑.必须保存在数据库中.

JSa*_*ger 5

这有帮助吗?

function replaceLineBreaksWithHTML(string) {
 return string !== undefined ? string.replace(/\n/g, '<br/>') : "";
}

function replaceHTMLWithLineBreaks(string) {
 return string !== undefined ? string.replace(/<br\/>/gi, '\n') : "";
}
Run Code Online (Sandbox Code Playgroud)