如何从tinyMCE 4编辑器外部触发模板插件

时间:2015-07-28 18:07:55

标签: php tinymce tinymce-4

我有一个使用'模板的项目' tinyMCE 4上的插件。我需要调用“插入模板”'在外部按钮上(或创建一个类似的功能)可以通过添加工具栏:模板'在工具栏中添加按钮。



tinyMCE.init({
    selector: '#my_editor',
    plugins: ["template"],
    toolbar1: "insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent template"
   });

<textarea id="my_editor"></textarea>
<button>INVOKE INSERT TEMPLATE HERE</button>
&#13;
&#13;
&#13;

Here is my fiddle

2 个答案:

答案 0 :(得分:0)

我没有使用内置模板,而是创建了自己的函数来获取预定义的HTML页面并通过execCommand将它们加载到tinyMCE(我使用VEX Dialogue来加载我的UI):

 $('button#template').click(function(){
   $.ajax({
            statusCode : { 404: function(){alert('Not Found');} },
            type       : 'post',
            data       : {},
            url        : '<script_that_load_my_templates>',
            success    : function(res){ 

                         vex.dialog.open({
                             message:'Select a layout',
                             input: res,
                             callback:function(data){
                                 if(data.layout !== undefined){

                                   tinyMCE.activeEditor.execCommand('mceInsertContent',false,data.content);
                                 }
                             } // CALLBACK BLOCK
                         });
                         //}); // END FANCYBOX

                     } // END SUCCESS BLOCK
    }); // end ajax */   
}); // END BUTTON LAYOUT CLICK EVENT 

答案 1 :(得分:0)

这里你去:

$('.mce-i-template').trigger('click')