Как показать или получить разрывы строк в TinyMCE?

Когда я редактирую текст в TinyMCE, я могу делать разрывы строк (белые линии), например

<p>some text</p>
<p></p>
<p>some other text</p>

Но когда я сохранил его на сервер и показал статью на сайте, он скрыл все <p></p>. Но мне нужно эквивалентное поведение, если в редакторе я вижу белую линию, она мне нужна после сохранения и отображения на сайте.

Способы решения проблемы, которые я видел:

  1. Внутри TinyMCE хранит такие строки, как <p></p>, как <p><br ... /></p>, но я не могу получить их после сохранения... Я могу использовать tinyMCE.get(contentid).getContent({ format: 'raw' });, но это прерывает видео и звук.

  2. Или я могу заменить <p></p> на <p><br /></p> на сервере, но это не работает, потому что это может быть как <p><strong></strong></p>, так и <p><span style="color:red"></strong></p> много вариантов... Трудно разобрать их все.

  3. Чтобы заставить TinyMCE отправлять мне уже подготовленный контент.

  4. Сделать <p></p> видимым в HTML, но как?


person Dmitrij Polyanin    schedule 18.05.2017    source источник
comment
Есть ли причина, по которой вы используете format:raw в вызове getContent()? Этот параметр обычно не требуется.   -  person Michael Fromin    schedule 18.05.2017
comment
Я использую версию tinymce-4.4.3, и здесь я специально удаляю пустые ‹p› в событии предварительной обработки следующим образом: setup: function (main) {main.on('PreProcess', function (e) {$.each($(e.node).find("section > p"), function (index, itm) { if (itm.childNodes.length == 1 && itm.childNodes[0].nodeName == 'BR') { $(itm).remove(); } });});} Без этого кода пустые ‹p› не будут удалены tinymce, даже когда вы сохраняете html. Проверьте это.   -  person PrashanthBR    schedule 19.05.2017


Ответы (1)


Я сделал, чтобы показать html пустые теги p.

p:after {
  content:"";
  display:inline-block;
  width:0px;
}

Итак, работа для меня идеальна.

person Dmitrij Polyanin    schedule 19.05.2017