使用ajaxSubmit替换DOM的各个部分时,我应该怎么处理tinyMCE?

Old*_*eon 8 javascript ajax jquery tabs tinymce-3

在多标签页上,一些标签submit处理通过一个标签更改其他标签的内容ajaxSubmit.如果其他选项卡包含有效tinyMCE编辑,在更换内容之前应该对该选项卡执行什么操作以及在替换后我应该做什么(如果有的话)?

目前,代码tinyMCE.execCommand("mceRemoveControl", true, ed_id);在目标选项卡中的所有编辑器上执行,并依赖于系统的正常功能,以便在更改后将其恢复.这就是必要的吗?我tinyMCE在更改后在代码中遇到了模糊的异常,但很难发现原因.

错误本身是SCRIPT5022:IndexSizeError - tiny_mce.js(1,78075)但我怀疑这是特别相关的.

TinyMCE v3.4.5

Bar*_*n01 4

正如我在评论中所说,TinyMCE 不能很好地与 AJAX 配合使用,它有很多问题,我已经尝试了很多次让它工作。

最后我切换到 CKEditor 所以如果你想尝试使用它你可以这里是你需要的选项ajaxSubmit()代码

beforeSubmit:function{
   for(var instanceName in CKEDITOR.instances) {
        try{
            CKEDITOR.instances[instanceName].destroy();
        }catch(e){
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

上面的代码将在您提交之前彻底删除 CKEditor 以下是当您的 ajax 再次完成时如何重新初始化 CKEditor 这是一个选项ajaxSubmit()

success:function(){
    // do what you need to update your DOM and then final call is
    $("editorSelector").ckeditor(options);
}
Run Code Online (Sandbox Code Playgroud)