如何处理html中的换行字符#“↵”
需求背景
通过ajax请求回字段值,该字符是String类型,且包含换行符↵
,将获取到的字符串内容按照原样格式进行换行展示出来。
解决思路
通过字符串替换元素的方式解决问题
解决过程
[danger] 错误过程:想到通过字符串替换元素的方式,在首次尝试过程中始终采用用
<br />
标签去替换↵
字符,替换失败。
正确解决方式
var myString = myString.replace(/(\r\n|\n|\r)/gm, "<br />");
[info] 不是通过
↵
去替换,而是在html中会被识别为\r,\n等转义字符,所以需要使用\r\n去替换。
测试实例
<body>
<div id="app"></div>
<div id="app2"></div>
<script type="text/javascript">
var msg = `你好
换行符
这是一个非常有意思的替换`;
var msg2 = msg.replace(/(\r\n|\n|\r)/gm , "<br />");
document.getElementById("app").innerHTML = msg;
document.getElementById("app2").innerHTML = msg2;
console.log(msg)
console.log(msg2 )
</script>
</body>
显示结果
[danger] 重点说明:一定是要通过键盘打上去的换行↵,而不是为了测试效果输入上去的↵字符