String 为什么CKEditor忽略空div,或者它是其他东西?

String 为什么CKEditor忽略空div,或者它是其他东西?,string,ckeditor,code-cleanup,strip-tags,String,Ckeditor,Code Cleanup,Strip Tags,我已经编写了一个插件,它将引导网格添加到编辑器中。但是,当其中没有内容时,CKEditor似乎会删除整个包装col div github上的插件: 这是dom中的默认设置。当我删除“内容”时,编辑器会删除包装div布局列 <div class="container-fluid layout-container"> <div class="row layout-row"> <div class="col-xs-3 col-sm-3 col-md-3 co

我已经编写了一个插件,它将引导网格添加到编辑器中。但是,当其中没有内容时,CKEditor似乎会删除整个包装col div

github上的插件:

这是dom中的默认设置。当我删除“内容”时,编辑器会删除包装div布局列

<div class="container-fluid layout-container">
  <div class="row  layout-row">
    <div class="col-xs-3 col-sm-3 col-md-3 col-lg-3 layout-column">   
        <p>content</p>
     </div>
    <div class="col-xs-3 col-sm-3 col-md-3 col-lg-3 layout-column">
       <p>content</p>
    </div>
    <div class="col-xs-6 col-sm-6 col-md-6 col-lg-6 layout-column">  
      <p>content</p>   
    </div>
 </div>

内容

内容

内容

我通读了这篇文档,虽然默认情况下没有剥离div元素,但我补充道

 config.protectedSource.push(/<div[^>]><\/div>/g);
 CKEDITOR.dtd.$removeEmpty['div'] = false;
config.protectedSource.push(/]>/g);
CKEDITOR.dtd.$removempty['div']=false;
在config.js中

我曾考虑过一种解决方法:在布局列没有数据时监听编辑器的更改(我必须更多地考虑这一部分),并插入空格以防止编辑器删除它,但我想知道当编辑器删除div时是否会触发任何事件,或者是否有更简单的方法来解决我的问题


我尝试了建议的解决方案,但似乎没有一个能解决问题。

可能的重复注意问题有点不同,但一些答案/解决方案适用。我看了一下,但它无法解决问题。我尝试包装到小部件中,但它也以样式删除了div。查看上一篇评论这里有@alauddin。你试过那种方法吗?是的,我试过,但什么也没发生。