如何防止标签在Rails中使用tinymce包裹我的输入?

默认情况下,tinymce输入作为段落标记传递给DOM:

我想删除该元素包装器,以便tinymce正好通过我在文本编辑器中输入的内容。 我怎么做 ? 如果您提供代码,是否也可以告诉我代码的添加位置? 问候 !!!

其实我解决了我的问题。 我所要做的就是更改段落标记的样式:

p {margin: 0; padding: 0;} 

您需要将forced_root_block指定为false。 但是,文档指出,不将根块作为

标记可能会削弱编辑器的行为。 换行符将与
标签间隔开。

 tinyMCE.init({ selector: 'textarea', forced_root_block: false }); 

请参阅此处的文档

我用gsub和正则表达式删除那些讨厌的东西:

 <%= @event.desc_long.gsub(/^\/,"").gsub(/\<\/p\>$/,"") %> 

首先.gsub删除TinyMCE字符串开头的

,第二个删除结尾的

。 对我有用。 这适用于任何使用正则表达式的语言(gsub用于rails)。 JavaScript示例:

 var str = "{TinyMCE HTML string}"; str = str.replace(/^\/,"").replace(/\<\/p\>$/,""); 

希望这可以帮助!

编辑:

回复:把它放在哪里。 你把TinyMCE放在数据库中的东西都留下了。 仅在显示时添加上述内容(在视图中,通过电子邮件发送)。

如果你只是想摆脱利润:

 tinymce.init({ ... setup: function(ed) { ed.on('init', function() { var doc = this.getDoc().getElementById("tinymce"); doc.style.margin = 0; }); }, });