我有一个CKEditor textarea:
<textarea cols="80" id="taBody" name="taBody" class="ckeditor" rows="10" runat="server"></textarea>
我让jQuery尝试从数据库中设置值:
$('#ContentPlaceHolder_taBody').val(substr[5]);
不要担心我已经测试过它返回字符串的子字符串。出于测试目的,我用“test”替换了子字符串,并且收到了同样的问题。
我知道围绕这一行的jquery不会影响它,因为我正在尝试填充其他文本字段。就谈到ckeditor而言。
以下是整个脚本:
function (obj) {
$.ajax({
type: "POST",
url: "ContentSections.aspx/GetContentDetails",
data: '{"nodeID": "' + obj.attr('id') + '"}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var str = msg.d;
var substr = str.split('|||');
$('#ContentPlaceHolder_hfContentSectionID').val(substr[0]);
$('.txtAlias').val(substr[1]);
$('.txtBrowserTitle').val(substr[2]);
$('.txtMetaDescription').val(substr[3]);
$('.txtMetaKeywords').val(substr[4]);
$('#ContentPlaceHolder_taBody').val(substr[5]);
}
});
}
问题是没有任何内容被填充,也没有显示任何javascript错误。
我试着四处看看,却找不到任何帮助我的东西。有没有人有任何想法?
答案 0 :(得分:25)
您需要使用CKEditor的API。
具体而言,http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.editor.html#setData
答案 1 :(得分:1)
阅读此链接http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.editor.html#setData后,代码为我工作。
CKEDITOR.instances.editor1.setData( '<p>This is the editor data.</p>' );
答案 2 :(得分:-1)
CKEDITOR.instances['IdOfCKEditorTextArea'].setData(value);
值就像你想设置 html 数据