Подтвердить что ты не робот

Как преобразовать \n в разрыв строки HTML

Я использую этот плагин для анализа bbcode bbcodeparser

но он не имеет функций для преобразования \n в <br/>.

Я попытался добавить это:

replace(/\r?\n|\r/g, '<br>')

... но это не сработало.

Как я могу реализовать функцию разрыва строки?

4b9b3361

Ответ 1

Если вы делаете это, чтобы показать новую строку и вернуть карету в html, вам не нужно делать это явно. Вы можете сделать это в css, установив предварительное значение атрибута пробела.

<span style="white-space: pre-line">@Model.CommentText</span>

Ответ 2

на самом деле, браузеры не рассматривают \r\n как реальные новые строки, в PHP nl2br, где, как и в Javascript, вы может использовать функцию ниже для эквивалента nl2br().

function nl2br (str, is_xhtml) {
var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '<br />' : '<br>';
return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1' + breakTag + '$2');}

Ответ 3

Приведенный выше ответ помог мне решить мою проблему, но я немного покопался и нашел дополнительную информацию о свойствах пустого white-space. Я надеюсь, что это может помочь кому-то, как я:

Что такое свойство white-space :

Пробел - это свойство CSS, которое помогает контролировать обработку пробелов и разрывов строк в тексте элемента. Он может принимать следующие значения: нормальный, nowrap, pre, pre-line, pre-wrap.

enter image description here