【发布时间】:2017-05-18 16:37:08
【问题描述】:
例如,当我在 TinyMCE 中编辑文本时,我可以换行(白线)
<p>some text</p>
<p></p>
<p>some other text</p>
但是当我将它保存到服务器并在网站上显示文章时,它隐藏了所有<p></p>。但是如果在编辑器中我看到白线我需要在保存并在现场显示后需要它,我需要等效的行为。
我看到的解决问题的方法:
TinyMCE 在内部将
<p></p>等行存储为<p><br ... /></p>但保存后我无法获取... 我可以使用tinyMCE.get(contentid).getContent({ format: 'raw' });,但它会破坏视频和音频。或者我可以在服务器上的
<p><br /></p>上替换<p></p>,但它不起作用,因为它可能像<p><strong></strong></p>或<p><span style="color:red"></strong></p>许多变体... 很难全部解析。强制 TinyMCE 向我发送已准备好的内容。
让
<p></p>在 HTML 中可见,但如何?
【问题讨论】:
-
您在
getContent()通话中使用format:raw是否有原因?通常不需要该设置。 -
我使用的是 tinymce-4.4.3 版本,在这里我专门删除了预处理事件中的空
,如下所示:
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(); } });});}没有此代码,空'即使保存 html,tinymce 也不会删除 s。检查一下。
标签: html tinymce break line-breaks tinymce-4