Замена перевода строк на </p><p>
Здравствуйте. Нужно изменить текст, полученную от <textarea>. В полученном тексте нужно переводы строк заменить на "</p><p>". То есть, подготовить его для вывода в браузер.
Написал такой код, но он не работает (т.е. переводы строк не работает): $(".news [data-id="+newDataId+"]").siblings("h3").after("<p>"+newText.replace('\r\n', '</p><p>')+"</p>"); "newText" - это и есть текст, принимаемый из <textarea>. Если оставить '\n' - то первый перевод строки заменяется, а дальше нет. Может, есть какие-то более удобные приёмы для этого, как, например, в PHP - nl2br()? |
Булат Азат улы,
а так? newText.replace(/\r\n/mg, '</p><p>') |
рони,
Не работает :-? |
Булат Азат улы,
newText.replace(/\r*\n/mg, '</p><p>') |
Цитата:
Если речь идет о разбиении на параграфы, то это одно и выполнять нужно не так, если вывод как есть (pre), то обернуть в <pre></pre>, а если в некотором месте перенести, то менять на <br>. Чего вы пытаетесь сделать не понять. |
рони,
Спасибо большое, теперь работает! А не могли бы вкратце объяснить, что означает эти доп. слеши, звёздочки и /mg? |
laimas,
Да, заменяет на <br>. Но я потом заменил и его: // $text = str_replace('<br />', '</p><p>', nl2br($dataNew['text'])); |
|
рони,
Спасибо! |
Еще вариант)
var text = ' lorem /n lorem' var re = new RegExp('(/n)', 'g'); text = text.replace(re, '<p></p>'); alert(text); |
Часовой пояс GMT +3, время: 11:13. |