HTML textarea 到 javascript 并保留换行符

HTML textarea to javascript and keep line break

我正在尝试通过 JavaScript 传递 HTML <textarea>,并希望保留换行符。例如,当我写:

Line a
Line b

结果为:

Line a Line b

我的代码:

function textwrite(){
  thetext = document.getElementById("text_change").value;    
  document.getElementById("demo").innerHTML = thetext;
}
<textarea id='text_change' oninput='textwrite()'></textarea>
    
<p id="demo"></p>

而且我不想使用 <pre> 标签。

使用white-space:

The white-space CSS property sets how white space inside an element is handled.

pre-wrap 其中

Sequences of white space are preserved. Lines are broken at newline characters, at <br>, and as necessary to fill line boxes.

function textwrite(){
  thetext = document.getElementById("text_change").value;    
  document.getElementById("demo").innerHTML = thetext;
}
#demo { white-space: pre-wrap; }
<textarea id='text_change' oninput='textwrite()'></textarea>
    
<p id="demo"></p>

\n\r\n\r 替换为 java 脚本中的 </br>

var myLineBreak = thetext.replace(/\r\n|\r|\n/g,"</br>");

function textwrite(){
     thetext = document.getElementById("text_change").value;  
      var myLineBreak = thetext.replace(/\r\n|\r|\n/g,"</br>");

     document.getElementById("demo").innerHTML = myLineBreak;
    }
<textarea id='text_change' oninput='textwrite()'></textarea>
    
    <p id="demo"></p>

为此,首先将文本框的多行 属性 设置为 true,然后在每行的末尾包含:"\r\n"