TinyMCE:保存内容时我的HTML会发生变化。我怎样才能保留我的HTML?

时间:2011-01-13 11:18:35

标签: javascript html tinymce format

我使用formats paramter来初始化tinymce以使用b-,i-和u-标签而不是跨度和样式

formats: {
    bold : {inline : 'b' },  
    italic : {inline : 'i' },
    underline: { inline: 'u' }
},

当我保存内容时,u-tags被替换为跨度(i-和b-标签不受影响):

<span style="text-decoration: underline;">underlined text</span>

如何将我的u-tags保存在HTML中?

1 个答案:

答案 0 :(得分:2)

经过一些“尝试和错误”后,我找到了一个有效的解决方案。但我相信有更优雅的方式。随意指出我正确的方向。我的解决方案包括将新的span替换回onSave事件的u-tag:

ed.onSaveContent.add(function(ed, o) {
    o.content = o.content.replace(/<span style="text-decoration: ?underline;">(.*?)<\/span>/gi, "<u>$1</u>");   
});

Felix Risterer提到了legacyoutput插件。它也适用于这个插件,但我会坚持上面的解决方案,因为legacyplugin做了很多事情,我不能完全预测还有什么可能会受到影响。