jquery、ajax 和 CKEditor - 如何“解除绑定”一个 CKEditor 实例

发布于 2024-10-11 14:23:46 字数 286 浏览 1 评论 0原文

嘿,我正在使用 jquery、ajax 和 CKEditor:

$( '.ckeditor' ).ckeditor();

第一次通过 ajax 加载页面时,ckeditor() 会顺利启动。第二次就失败了。通常,在绑定时,您会执行以下操作:

.unbind('click').bind('click',function{...})

我该如何取消绑定ckeditor()

Hey, I'm using jquery, ajax and CKEditor:

$( '.ckeditor' ).ckeditor();

The first time the page is loaded through ajax the ckeditor() is fired off without a hitch. The second time it fails. Normally when binding you do something like:

.unbind('click').bind('click',function{...})

What do I do to unbind ckeditor()?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

最美不过初阳 2024-10-18 14:23:46

我发现的最好的是...

if (CKEDITOR.instances['ckeditor']) {
    CKEDITOR.remove(CKEDITOR.instances['ckeditor']);
}

Best I've found is ...

if (CKEDITOR.instances['ckeditor']) {
    CKEDITOR.remove(CKEDITOR.instances['ckeditor']);
}
小耗子 2024-10-18 14:23:46

您可以使用以下方法获取 CKEDITOR 对象引用:

var editor = $('.ckeditor').ckeditorGet();

然后您可以像这样销毁它:

CKEDITOR.remove(editor);

You can get a CKEDITOR object reference by using:

var editor = $('.ckeditor').ckeditorGet();

and then you can destory it like this:

CKEDITOR.remove(editor);
自由范儿 2024-10-18 14:23:46

我做了很长的路:)。您可以这样计算 CK 实例的数量:

function countProps(obj) {
    var l = 0;
    for (p in obj) l++;
    return l;
}
if ( countProps(CKEDITOR.instances) ) { 
// to assure you have at least one instance of ckeditor
// you may want to use more complicated checks - in my case I have only one editor 
// instance per page
    editor = $('youreditor').ckeditorGet();
    CKEDITOR.remove(editor); 
}

I did it long way :). You may count the amount of CK instances this way:

function countProps(obj) {
    var l = 0;
    for (p in obj) l++;
    return l;
}
if ( countProps(CKEDITOR.instances) ) { 
// to assure you have at least one instance of ckeditor
// you may want to use more complicated checks - in my case I have only one editor 
// instance per page
    editor = $('youreditor').ckeditorGet();
    CKEDITOR.remove(editor); 
}
伤感在游骋 2024-10-18 14:23:46

简单的方法
按名称获取实例,如果存在则删除:

  var editor = CKEDITOR.instances['name'];
  if (editor) {
      editor.destroy(true);
  }

  var editor = CKEDITOR.instances['name'];
  if (editor) {
      CKEDITOR.remove(editor);
  }

Simple way
Get instances by name , If exist then remove:

  var editor = CKEDITOR.instances['name'];
  if (editor) {
      editor.destroy(true);
  }

OR

  var editor = CKEDITOR.instances['name'];
  if (editor) {
      CKEDITOR.remove(editor);
  }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文