JavaScript заменить n на [дубликат]
этот вопрос уже есть ответ здесь:
-
Как заменить все разрывы строк в строке тегами
? 10 ответов
var messagetoSend = $.trim(document.getElementById("msgText").value);
messagetoSend = messagetoSend.replace("n", "<br />");
alert(messagetoSend);
ввод:
Line 1
Line 2
Line 3
этого оповещения:
Line 1<br />
Line 2
Line 3
когда я ожидаю, что он предупредит:
Line 1<br /><br /><br />Line 2<br /><br /><br /><br /><br />Line 3
3 ответа:
вам нужно /g для глобальные сопоставления
replace(/\n/g, "<br />");
это работает для меня
<textarea id="x"> Line 1 Line 2 Line 3 </textarea> <script> var messagetoSend = document.getElementById('x').value.replace(/\n/g, "<br />"); alert(messagetoSend); </script>
обновление
кажется, у некоторых посетителей этого вопроса есть текст с линиями перегиба, экранированными как
текст\r\n более чем на одну строку"
в этом случае вам нужно избежать косых черт:
replace(/\r\n/g, "<br />");
Примечание: все браузеры игнорировать
\r
в строке при рендеринге.