2017-06-21 41 views
0

我正在使用(MVC控制器)样式小工具在EPiServer CMS 9.2站点中开发两个小工具。这两个小工具都需要一个富文本编辑器。我使用TinyMCE进行了连线,并且在小工具首次实例化编辑器时工作正常,但之后默默无闻。无法在不同EPiServer小工具中实例化多个Tinymce编辑器

实例元素的代码使用触发GadgetAttribute.ClientScriptInitMethod和我的初始化函数看起来像:

MyGadget.init = function (e, gadget) { 
    $(gadget.element).find('textarea.tinymce').tinymce({ 
     theme: "modern" 
    }); 
}; 

在即使在相同的小工具后续调用,调用tinymce()完成,没有错误,但编辑不目前在DOM(如相关<textarea>和基础<textarea>之前的元素是不可见的。

什么引起的?我怎么可能解决呢?

+0

你使用自己的编辑器下载或试图使用Episerver的? Epi建议不要使用他们的编辑器进入自己的界面:https://world.episerver.com/documentation/Items/Developers-Guide/Episerver-CMS/9/Editing/Customizing-the-TinyMCE-editor/#rollyourown – egandalf

+0

@egandalf我在模块目录中有我自己的副本 –

+0

您是否在仪表板之外测试过您的代码?例如。设置一个空白页面,看看你是否可以实例化它两次,而没有任何其他可能妨碍?总是有助于删除测试时可以使用的变量。 – egandalf

回答

0

您可能需要调用tinymce的init函数并传递选择器。

沿着这些线可能吗? (未经测试)

tinymce.init({ 
    selector: '#gadgetElementId textarea.tinymce', 
}); 

More info here

+0

我正在使用jQuery插件'$(gadget.element).find('textarea.tinymce')。'针对我认为的特定元素。 –

相关问题