首页 > Web开发 > 详细

JS CKEditor使用setData后绑定click事件

时间:2017-06-09 13:02:31      阅读:448      评论:0      收藏:0      [点我收藏+]

CKEditor使用setData()时会自动丢失初始时绑定的时间,在百度时发现有很多方法都不对。

近期在做项目的时候,由于客户需要,将原来的文本格式的textarea标签更改成富文本编辑器--CKEditor,插件使用起来很方便,网上教程很多。API看起来比较麻烦。

为文本框添加绑定事件的两种方式:

1、CKeditor预加载时可以绑定一次:

IS代码:

var a = CKEDITOR.replace( id);//id是页面元素的ID值;ckeditor_onFocus是自己定义的方法
    a.on("instanceReady", function () {
    this.document.on("click", function () {ckeditor_onFocus(id);});
});

第一个方法很简单易懂,开始初始化时就绑定事件。这样做事对的,但是CKEditor在使用赋值方法setData()之后,初始化绑定的click事件 就会自动丢失;

所以在每次使用setData()方法后需要重新绑定事件,两个绑定方法是不一样的。

JS代码:

function CKE_setData(id,va){//id是页面元素的id值;va是需要赋值的内容
  CKEDITOR.instances[""+id+""].setData(va,function() {
  CKEDITOR.instances[""+id+""].on("focus", function () {ckeditor_onFocus(""+id+"");});
  } );
}

重新绑定后,再次点击就可以实现绑定的事件效果了。

技术分享

 

 

在使用CKEditor的时候一定要注意着两种绑定事件的方法。

JS CKEditor使用setData后绑定click事件

原文:http://www.cnblogs.com/wgl1/p/6971503.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!