我正在使用tinymce 4.0.1,当你开始输入或点击回车时它会自动添加p标签。如何动态删除这些p标签,然后将内容重新插入编辑器。
答案 0 :(得分:48)
您需要将以下行添加到init语句
forced_root_block : ""
所以,你的完整代码将是这样的:
<script>tinymce.init({forced_root_block : "",selector:'textarea'});</script>
问候!
答案 1 :(得分:13)
Tinymce需要一个root block element,默认情况下是一个段落,以便能够设置内容样式。因此删除这些段落只会导致所有内容被包装到一个段落中,因为tinymce被强制使用它作为根块元素。
答案 2 :(得分:3)
您可以删除&#34; p&#34;通过将forced_root_block : false
添加到您的设置中来标记,或者您可以通过statusbar: false
隐藏状态栏
答案 3 :(得分:2)
怎么样
$("p").each(function(){$(this).parent().append($(this).html()); $(this).remove()})
答案 4 :(得分:1)
您需要在init语句中添加以下行。
forced_root_block : ""
答案 5 :(得分:1)
您可以在显示时简单地调整TinyMCE放入数据库的内容吗?查看same thing for Rails的帖子。
select distinct authorid
from authoring as au1
where not exists(
select *
from authoring as ar1
where not exists(
select *
from authoring as a2
where a2.articleid = ar1.articleid
and a2.authorid = au1.authorid
));
The result I am getting is
authorId
--------
1
The result should be 1,2 because authorID 2 shares a article with both authors 1 & 3
authorId
--------
1
2
Authors Table
auid | name
-----------
1 | Michael
2 | Jazmine
3 | Amanda
Authoring Table
articleId | authorId
--------------------
1 | 1
2 | 1
3 | 1
1 | 2
3 | 2
1 | 1
在此处显示整个TinyMCE HTML 的开始和结束标记。不要乱用其他p标签或TinyMCE配置。
正则表达式的解释(为便于阅读而删除了):
var str = "{TinyMCE HTML string}"; /* however you get it */
str = str.replace(/^\<p\>/,"").replace(/\<\/p\>$/,"");
希望这有帮助。
答案 6 :(得分:1)
仅在调用javascript中添加此内容:
forced_root_block : false
答案 7 :(得分:0)
在主题functions.php
中插入以下代码:
add_filter('tiny_mce_before_init', 'my_switch_tinymce_p_br');
function my_switch_tinymce_p_br($settings) {
$settings['forced_root_block'] = false;
return $settings;
}
如果你想替换root&#34; p&#34;标记其他一些,用&#34; div&#34;替换false (例如)。
答案 8 :(得分:0)
将此添加到functions.php文件中,并通过向tiny_mce_before_init挂钩添加一些参数来删除标准
标记。 如果您想了解它的工作原理,可以在此页面上进一步阅读: https://codex.wordpress.org/TinyMCE
<figure><iframe>[code]</iframe></figure>
答案 9 :(得分:0)
您在寻找: force_root_block:'', force_br_newlines:是的, force_p_newlines:false,
答案 10 :(得分:-5)
如果你使用jQuery可以做:
$("p").remove();