TinyMCE逃脱了FreeMarker标签

时间:2016-10-13 15:15:08

标签: html tinymce wysiwyg freemarker

我使用TinyMCE 4作为HTML页面的WYSIWYG编辑器。但是当我在TinyMCE中使用<#if condition> <#else><#if x == 1> x is 1 <#else> x is not 1 </#if> 这样的标记惯用语时,当我从&#34;代码视图&#34; (简单的textarea)到&#34;设计视图&#34; (WYSIWYG)。

例如,如果我在简单的textarea(代码视图)中编写HTML

&lt;#if x == 1&gt;
    x is 1
&lt;#else/&gt;
    x is not 1
&lt;/#if&gt;

然后切换到编辑器并返回到代码视图,它变为:

[#tag]...[/#tag]

正如您所见,FreeMarker标记在切换中被转义。

Q1:有没有办法配置TinyMCE来处理这些标签,这样当我在编辑器和代码视图之间来回切换时,标记保持一致?
Q2:或者(以不同的方式说同样的事情)TinyMCE是否支持FreeMarker?

到目前为止我尝试了什么?

  • 我使用了FreeMarker 但由于TinyMCE将verify_html: false, valid_elements: '*[*]', 视为纯文本,我遇到了不同的问题。
  • 我尝试在配置中禁用HTML验证:

    {{1}}

1 个答案:

答案 0 :(得分:1)

我认为您必须在自定义freemarker.cache.TemplateLoader实施中取消它们,这将包裹您的正常TemplateLoader。当然,如果用户确实键入“&lt;#”或“&lt; /#”,则会出现歧义,但我不确定这是否是您应用程序中的问题。