我有一个带有CKEditor(bbCode插件)的文本区域
<textarea id="editor1" name="conteudo" class="form-control" rows="3" required></textarea>
这是我的CKEditor实例:
$( document ).ready( function() {
$( 'textarea#editor1' ).ckeditor();
} );
我正在进行一个JSON
请求,它需要一个值,我希望在这个textarea
中修改这个值,我尝试了jQuery
,但没有成功!以下是我的尝试:
video_id = "lLi1Lx2xTKI";
$.getJSON('http://gdata.youtube.com/feeds/api/videos/'+video_id+'?v=2&alt=jsonc',function(data,status,xhr){
description = data.data.description;
// Attempt here
$("#editor1").html(description);
});
更新
我尝试过使用".val()",但没有成功!
您不能简单地通过jQuery向CKEDITOR添加文本,而是使用CKEDITOR 提供的api
CKEDITOR.instances.editor1.setData(data.data.description);
这里你的代码看起来像
$.getJSON('http://gdata.youtube.com/feeds/api/videos/'+video_id+'?v=2&alt=jsonc',function(data,status,xhr){
CKEDITOR.instances.editor1.setData(data.data.description);
});
Fiddle
不要直接将描述写入文本区域,而是尝试CKEditor setData方法。你可以在这里找到它的描述:
http://docs.ckeditor.com/#/api/CKEDITOR.editor-method-popup
还要确保您的描述变量确实有一个值,我会使用临时alert(description);
,但您也可以使用javascript调试器来执行此操作。