Использование JQuery для установки значения CKEditor - PullRequest
7 голосов
/ 02 апреля 2011

У меня есть текстовое поле CKEditor:

 <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.

Я пытался читать вокруг, но не мог найти ничего, что помогло бы мне. У кого-нибудь есть идеи?

Ответы [ 2 ]

25 голосов
/ 02 апреля 2011

Вам нужно использовать API CKEditor.

В частности, http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.editor.html#setData

1 голос
/ 24 марта 2017

После прочтения этой ссылки http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.editor.html#setData, у меня работает следующий код.

CKEDITOR.instances.editor1.setData( '<p>This is the editor data.</p>' );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...