0

我正在尝试更新我的 ckeditor 的内容,但它不起作用

<textarea id="monday" class="ckeditor" name="monday" >1</textarea>
<script type="text/javascript" >
    setTimeout(function(){
        $('#monday').val('test');
        CKEDITOR.instances.monday.updateElement();
        alert( $('#monday').val());
    },1000)
</script>

但我的 ckeditor 中总是有 1 并且警报返回

1

(1 带 p 但没有出现)

这是CKEditor 4.0

我曾经读过关于这个的帖子,但它是一个最旧的版本

谢谢

编辑:第二次测试

<script type="text/javascript" >
setTimeout(function(){
    $('#monday').val('test');
    for ( instance in CKEDITOR.instances )
    {
        CKEDITOR.instances[instance].updateElement();
    }
    alert( $('#monday').val());
},5000)
</script>

但它没有用

编辑第三次测试

<script type="text/javascript" >
setTimeout(function(){
    $('#monday').val('test');
    $('textarea.ckeditor').each(function () {
    var $textarea = $(this);
    $textarea.val(CKEDITOR.instances[$textarea.attr('name')].getData());
    console.log(CKEDITOR.instances[$textarea.attr('name')].getData());
    console.log($('#monday').val())
    });
},5000)
</script>

我有所有的时间

1

在我的控制台中

<script type="text/javascript" >
setTimeout(function(){
    $('#monday').val('test');
    $('textarea.ckeditor').each(function () {
    var $textarea = $(this);
    console.log($('#monday').val())
    });
},5000)
</script>

返回测试

4

2 回答 2

1

如果删除此行会发生什么

CKEDITOR.instances.monday.updateElement(); ?

于 2013-02-11T20:07:46.387 回答
1

这是另一个选择

$('textarea.ckeditor').each(function () {
   var $textarea = $(this);
   $textarea.val(CKEDITOR.instances[$textarea.attr('name')].getData());
});
于 2013-02-11T20:28:00.177 回答