Как добавить текст в источник html в CKEditor?


Я использую CKEditor в своем веб-приложении. Нажав на одну ссылку, я добавляю текст в CKEditor. Работает отлично. Но когда я открываю source tab, я не могу добавить этот текст к существующему источнику. Ты можешь помочь мне, как я могу это сделать? Заранее спасибо. Извините за мой английский.

4 ответов


Если вы пытаетесь добавить HTML-текст, вы можете использовать метод createFromHtml, например:

var imgHtml = CKEDITOR.dom.element.createFromHtml("<img src=" + imageSrcUrl + " alt='' align='right'/>");

где imageSrcUrl-это местоположение изображения, а затем вы можете вставить его в источник ckeditor следующим образом:

CKEDITOR.instances.body.insertElement(imgHtml);

есть другие методы, такие как insertHtml или insertText, вы можете проверить CKEditor APIs для получения более подробной информации об этих.


согласно этому сообщению http://www.techsirius.com/2013/09/dynamically-insert-string-into-ckeditor.html

вы можете вставить текст в ckeditor (textarea). Вам просто нужно дать уникальный идентификатор ckeditor (textarea) после этого следуйте ниже кода.

<script type=”text/javascript”>
  function insertIntoCkeditor(str){
    CKEDITOR.instances[ckeditor_id].insertText(str);
  }
</script>

Это рабочая демо-ссылке. http://demo.techsirius.com/demo/dynamically-insert-string-into-ckeditor


другая функция образца работая:


  function insertIntoCkeditor(str,url){

  var tagHtml = ''+str+'';

    //CKEDITOR.instances['bilgi'].insertText(tagHtml);
    CKEDITOR.instances['bilgi'].insertHtml(tagHtml);
    //CKEDITOR.instances.body.insertElement(tagHtml);
  }

onclick="insertIntoCkeditor('Parakazan','Http://www.parakazan.org')"> 



добавить HTML в конце можно сделать так:

var targetEditor = CKEDITOR.instances.idOfYourTextarea;
var range = targetEditor.createRange();
range.moveToElementEditEnd(range.root);
targetEditor.insertHtml("<p>foo</p>", 'html', range);