相关疑难解决方法(0)

使用Angular JS中的CKEditor内容更新textarea值

我正在使用最新的CKEditor(标准版)并基于这个 问题,我已经实现了这样的角度指令,

var cmsPlus = angular.module('cmsPlus', []);

cmsPlus.directive('ckEditor', function() {
  return {
    require: '?ngModel',
    link: function(scope, elm, attr, ngModel) {
      var ck = CKEDITOR.replace(elm[0]);

      if (!ngModel) return;

      ck.on('pasteState', function() {
        scope.$apply(function() {
          ngModel.$setViewValue(ck.getData());
        });
      });

      ngModel.$render = function(value) {
        ck.setData(ngModel.$viewValue);
      };
    }
  };
});
Run Code Online (Sandbox Code Playgroud)

当我在CKEditor GUI模式下输入内容时,它工作正常,这里我将输入的内容添加到textarea的ng-model中.

但是当我切换到代码编辑器时,即使在切换回GUI之后也没有获得更新的内容.需要在图形模式下再次键入内容.

我的指令有什么问题?或者我可以使用其他一些CKEditor事件扩展此指令吗?

我想为表单提交或其他内容添加更多事件.

在这里演示.

javascript wysiwyg ckeditor angularjs angularjs-directive

14
推荐指数
2
解决办法
2万
查看次数

angularjs ckeditor指令有时无法从服务加载数据

我使用了Vojta的angularJS指令,但有时ckeditor无法显示服务中的数据.这几乎从未在刷新时发生,但在导航回页面时经常发生.我能够验证$ render函数始终使用正确的数据调用ck.setData,但有时它不会显示.

ckeditor angularjs

12
推荐指数
1
解决办法
5434
查看次数