Я пытаюсь передать HTML <textarea>
через JavaScript и хочу сохранить разрывы строк. Ex, когда я пишу:
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>
.
Замените \n
, \r
, \n\r
с помощью </br>
в java-скрипте:
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>
Использовать пробел:
Свойство CSS с
white-space
определяет, как выполняется свободное пространство внутри элемента.
со значением pre-wrap
где
Сохраняются последовательности белого пространства. Строки разбиваются на символы новой строки, в
<br>
и, если необходимо, заполнять линейные поля.
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>
Для этого сначала установите для многострочного свойства textBox значение true, а затем включите в конце каждой строки следующее: "\r\n"