使用JQuery设置CKEditor值

时间:2011-04-01 22:47:46

标签: jquery ajax ckeditor

我有一个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错误。

我试着四处看看,却找不到任何帮助我的东西。有没有人有任何想法?

3 个答案:

答案 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 数据