如何處理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] 重點說明:一定是要通過鍵盤打上去的換行↵,而不是爲了測試效果輸入上去的↵字符