AngularJS + CKEditor,模糊事件

时间:2013-09-19 08:54:48

标签: angularjs ckeditor angularjs-directive

所以这是我的ckeditor指令(用coffeescript编写)

App.directive 'ckeditor', ->
require: '?ngModel'
link: (scope, elm, attr, ngModel)->
    ck = CKEDITOR.replace(elm[0])
    unless ngModel then return
    ck.on 'pasteState', ->
        scope.$apply ->
            ngModel.$setViewValue(ck.getData())
    ck.on 'blur', ->
        console.log "blur"
        # call function from ng-blur
    ngModel.$render = (value)-> ck.setData(ngModel.$viewValue)

这就是我使用它的方式:

<textarea
    ckeditor
    ng-model="data[f.name]"
    ng-blur="update(f.name)"
    onblur="console.log('blur');">
</textarea>

如何在模糊事件中调用ng-blur指令的函数? 我正在使用1.2.0-rc.2版本的angular.js

1 个答案:

答案 0 :(得分:0)

这是一个适合我的简单解决方案(没有coffeescript):

ck.on('blur', function() {
    if(attr.ngBlur) scope.$apply(attr.ngBlur);
    ngModel.$setViewValue(ck.getData())
});