如何在TinyMCE中添加(否则)无效的HTML元素

时间:2010-06-24 17:36:16

标签: javascript dom tinymce dtd

我的HTML包含这样的元素,因为它使用来自django-basic-apps的内联。

<inline type="myapp.mymodel" id="4" />

我正在尝试使用tinymce将其中一个插入到DOM中。在网站的前端,这些被处理成良好的代码。

在tinyMCE中,我添加了配置:

extend_valid_elements: 'inline[id|ids|type|filter|class|template]',

但是我随时尝试插入:

tinyMCE.execCommand('mceInsertRawHtml',false,'<inline type="myapp.mymodel" id="4" />');

没有任何反应,

如果我这样做:

tinyMCE.activeEditor.getContent()

TinyMCE删除我代码中的所有<inline个元素。

此外,我希望这些元素通过CSS或其他东西显示在tinyMCE中,但我可能不得不破解DTD。

如果这不起作用,我认为可能的解决方案是将内容预呈现为有效的内容:

然后在保存之前,将其转换回原来的状态。

请提供我应该研究的任何建议。

2 个答案:

答案 0 :(得分:1)

在tinymce tiny_mce_src.js的源代码中搜索字符串valid_elements并直接在那里添加元素和属性。

答案 1 :(得分:0)

改为使用mceInsertContent命令,不要使用自动关闭标记:

tinyMCE.execCommand('mceInsertContent', false, '<inline type="myapp.mymodel" id="4"></inline>');
相关问题