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

发布于 2024-10-12 03:38:17 字数 468 浏览 4 评论 0原文

我正在使用 格式参数 初始化tinymce以便使用b-,i - 和 u 标签而不是跨度和样式

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

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

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

我可以做什么来保留我的 u 标签html?

I am using the formats paramter to initialize tinymce in order to use b-,i- and u-tags instead of spans and styles

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

When i save the content, the u-tags get replaced by spans (i- and b-tags are not affected):

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

What can i do to keep my u-tags in the html?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

囍笑 2024-10-19 03:38:17

经过一些“尝试和错误”后,我找到了一个有效的解决方案。但我确信有一种更优雅的方式。请随时指出我正确的方向。我的解决方案包括将新的跨度替换回 onSave 事件上的 u 标签:

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

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

After some "try and error" i found a solution which works. But i am sure there is a more elegant way. Feel free to point me into the right direction. My solution consists of the replacement of the new span back to the u-tag on the onSave event:

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

Felix Risterer mentioned the legacyoutput plugin. It works with this plugin too, but i will stick with the solution above cause the legacyplugin does many things and i am not fully able to predict what else could be affected.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文