在for循环中无法识别CKEDITOR实例

时间:2017-12-18 14:13:55

标签: javascript jquery ckeditor

我正在通过AJAX添加新的textarea元素,所以我在下面写了一个函数assignRichText(),它将CKEDITOR添加到任何textarea.addckeditor,然后删除addckeditor类,以便第二次添加它。这似乎有效。

但是,我在执行AJAX保存时也调用了下面的函数updateRichText(),因为否则我的textarea元素没有更新(因为我没有提交表单)。在我的控制台中,我看到该功能正在开始和结束,但是console.log(' i =' + i);从不在我的控制台中放任何东西所以我的实例没有被提起。我的" for"是否有问题?声明?

function assignRichText(){
    $('textarea.addckeditor').each(function(){
        ClassicEditor
            .create(document.querySelector('textarea.addckeditor'), {
                toolbar: ['bold', 'italic']
            })
                .then(editor => {
                    console.log(editor);
                })
                .catch(error => {
                    console.error(error);
                });

        $(this).removeClass('addckeditor');
    });
}

function updateRichText(){
    console.log('start updateRichText');

    for (var i in ClassicEditor.instances){
        console.log('i='+i);
        ClassicEditor.instances[i].updateElement();
    }

    console.log('end updateRichText');
}

0 个答案:

没有答案