移除 CKEditor 实例
Posted
技术标签:
【中文标题】移除 CKEditor 实例【英文标题】:Remove CKEdit Instance 【发布时间】:2011-02-28 10:45:27 【问题描述】:我似乎无法按照文档销毁 CKEdit 的实例。
考虑以下几点:
<input name="txt1" type="text" id="txt1" /><br />
<a href="javascript:void(0);" onclick="create()">Create</a><br />
<a href="javascript:void(0);" onclick="destroy()">Destroy</a>
<script type= "text/javascript" >
<!--
function create()
var hEd = CKEDITOR.instances['txt1'];
if (hEd)
CKEDITOR.remove(hEd);
hEd = CKEDITOR.replace('txt1');
function destroy()
var hEd = CKEDITOR.instances['txt1'];
if (hEd)
CKEDITOR.remove(hEd);
-->
</script>
当 destroy() 运行时,CKEDITOR.remove(hEd);正在被调用。多次单击 create() 在屏幕上生成多个 CKEditor 实例,但它们的实例不再出现在 CKEDITOR.instances 中。
我错过了什么吗?
【问题讨论】:
【参考方案1】:您必须使用 hEd.destroy (editor.destroy())。
CKEDITOR.remove() 供内部使用,如 API 中所述。
【讨论】:
跟踪了一个错误的 sn-p。谢谢你让我直截了当。 @AlfonsoML 谢谢你 - 你救了我的怒火 :) 是的,没错。如果您使用 CKEDITOR.remove() 则实例不会被破坏。你需要调用 sth like: instance.destroy() 来删除旧的。【参考方案2】:简单的解决方案
CKEDITOR.instances['textareaId'].destory()
【讨论】:
【参考方案3】:你必须使用:
<textarea name="tx1" id="tx1" rows="15" cols="106"></textarea>
CKEDITOR.instances['tx1'] = false;
【讨论】:
以上是关于移除 CKEditor 实例的主要内容,如果未能解决你的问题,请参考以下文章