2

我有一个 html 表格,我在其中显示一个单元格中的 tinyMCE 编辑器实例,一次一个。意思是,用户一次在一个单元格中看到一个 tinyMCE 编辑器,当他们按 Tab 键时,该编辑器将从当前单元格中删除(编辑器中的值被复制到该单元格)并且编辑器显示在下一个单元格中。页面上还有其他 tinyMCE 编辑器,所有编辑器共享同一个工具栏。

我使用的是旧版本的 tinyMCE - 3.5.10,并且由于遗留原因无法很快升级。

如果我不使用某些 HTML 元素(如字体颜色和背景颜色),一切正常。然后我一直遇到这两个错误之一

tiny_mce.js:5 Uncaught TypeError: Cannot read property 'getBookmark' of null
    at Object.beforeChange (tiny_mce.js:5)
    at Editor.<anonymous> (tiny_mce.js:5)
    at Dispatcher.dispatch (tiny_mce.js:5)
    at DOMUtils.c (tiny_mce.js:5)
    at j (tiny_mce.js:5)
    at HTMLDocument.y (tiny_mce.js:5)

或者

Uncaught TypeError: Cannot read property 'createRange' of undefined
    at Selection.getRng (tiny_mce.js:5)
    at l (tiny_mce.js:5)
    at Selection.getBookmark (tiny_mce.js:5)
    at Object.beforeChange (tiny_mce.js:5)
    at Editor.<anonymous> (tiny_mce.js:5)
    at Dispatcher.dispatch (tiny_mce.js:5)
    at DOMUtils.c (tiny_mce.js:5)
    at j (tiny_mce.js:5)
    at HTMLDocument.y (tiny_mce.js:5)

我正在使用 tinyMCE.execCommand('mceRemoveControl', false, "myeditor"); 删除编辑器 并添加 tinyMCE.execCommand('mceAddControl', true, "myeditor");

使用相同 ID 完全删除编辑器并将其添加回来的正确方法是什么?

4

0 回答 0