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

时间:2015-09-15 21:45:56

标签: ruby-on-rails forms tinymce

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

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

4 个答案:

答案 0 :(得分:1)

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

p {margin: 0; padding: 0;}

答案 1 :(得分:1)

您需要将forced_root_block指定为false。但是,文档声明没有将您的根块作为<p>标记可能会削弱编辑器的行为。新行将与<br>标签间隔开。

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

请参阅文档here

答案 2 :(得分:0)

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

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

首先.gsub删除TinyMCE字符串开头的<p>,第二个删除结尾处的</p>。为我工作很棒。这适用于任何使用正则表达式的语言(gsub用于rails)。 JavaScript示例:

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

希望这有帮助!

修改

回复:把它放在哪里。您将TinyMCE单独放入数据库中。只有在显示时才添加上述内容(在视图中,通过电子邮件发送任何内容)。

答案 3 :(得分:0)

如果你只是想摆脱利润:

\documentclass{article}
\usepackage[utf8]{inputenc}
\begin{document}

<<echo=FALSE,results="asis">>=
library(xtable)
xtab <- data.frame(Text = c(
  "A vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry long string that could be so much longer",
  "Another vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry vèry long string"))
  print.xtable(xtable(xtab, align = c("l", "p{5cm}")))
@

\end{document}