解决 CKEditor 在blur时 用 getData() 不能实时/及时/立即获取数据内容

原文及更多精彩,在这里: http://yysource.sourceforge.net/?p=62

当 CKEditor 的内容是“1111”时,鼠标移出编译器并点击,则触发 blur 事件,此时用 getData() 可能无法获取到实时的内容,获取的结果很可能为空。所以比较好的办法是这样:


	window.exView = Backbone.View.extend({
		editorRender: function () {
			editor.on("blur", function(e) {
				e.listenerData.model.set("ha_body", this.document.getBody().$.innerHTML);
			}, null, this);
		},
	});


先简单介绍一下:此段代码是在一个 Backbone 框架的View类里面,调用 CKEditor 的专用事件绑定函数 on 对 blur 事件进行绑定。调用 on 时传进去的 this 是 exView 对象,这样 exView 对象在 on 的匿名函数里面就会以 e.listenerData 的形式存在,e.listenerData.model 是 Backbone.Model 类的扩展。


重点:this.document.getBody().$.innerHTML 就是 CKEditor 编辑器里的实时内容了。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值