tinymcebundle返回降价

时间:2017-01-31 17:39:39

标签: javascript symfony tinymce markdown

我想返回Markdown而不是HTML。

(我的项目是用syfalcon / TinymceBundle写的Symfony 2)

我发现了这一点,但它不起作用......(我没有看到有没有变化)(https://www.tinymce.com/docs/plugins/textpattern/

我使用JavaScript的调度程序。 这是我的档案:

;(function(dispatcher, window) {
    dispatcher.addScript('global', function() {
        tinymce.init({
            selector: "textarea",  // change this value according to your HTML
            plugin: 'textpattern',
            textpattern_patterns: [
                {start: '*', end: '*', format: 'italic'},
                {start: '**', end: '**', format: 'bold'},
                {start: '#', format: 'h1'},
                {start: '##', format: 'h2'},
                {start: '###', format: 'h3'}
            ]
        });
    });
})($dispatcher, window);

我想打电话:

{{ tinymce_init() }}

在我的树枝文件上。

现在我输了......因为

var_dump($form->getData());

返回HTML代码,但我想要Markdown代码......

有可能吗?如果是的话怎么样?

谢谢。

1 个答案:

答案 0 :(得分:2)

TinyMCE是一个HTML编辑器,因此当您从TinyMCE请求数据时,您将获得HTML。

textpattern插件允许有人输入Markdown,编辑器会动态将其转换为HTML。

例如,如果您输入

# heading

......你会得到

<h1>heading</h1>
按回车键后,在编辑器中

....转换完成后,Markdown就不再有了。

如果您需要Markdown作为最终结果,您需要找到一个将HTML转换为Markdown的工具,并且您可以在发布表单后执行该转换。

注意:Markdown在其构造中比HTML更受限制,因此如果您希望它能够正常工作,您可能需要限制编辑器中允许的HTML标记,您可能需要限制哪些工具栏按钮和菜单您为用户提供的选项。