web-dev-qa-db-ja.com

JQueryを使用してCKEditorにデータを追加する方法

ページを読み込むたびに、使用するCK Editorからデータを取得するために、JQueryを使用してCK Editorにテキストを読み込む必要があります

var editor_data = CKEDITOR.instances['editor1'].getData();

今、データをエディターに戻すために使用できる同様の関数がありますか?

私はajaxを使用してこのようなデータを設定しています

$.ajax({
  type: "POST",
  url: "/inc/ajax/basic.php?menu_id="+menu_id+"&info=3",
  success: function(msg){

    CKEDITOR.instances['editor1'].setData(msg);
  }
});

私は何を間違えていますか

30
Roland

これを試して:

CKEDITOR.instances['editor1'].setData(html)

ここで、「html」は編集するコンテンツを含む文字列です。

65
PanJanek

配列ではないので、このようにインスタンスを置き換えるだけです

CKEDITOR.instances.editor1.setData(html)
9
mac786751
CKEDITOR.instances['<%=ckEditor.ClientID%>'].setData(value);
1
Happy Patel
var jqxhr = $.get( "file.php", function(data) {
CKEDITOR.instances.idOftextAreaName.setData( data );
    alert( "success" );
  })
.done(function() {
    //alert( "second success" );
})
.fail(function() {
    alert( "error" );
})
.always(function() {
   // alert( "finished" );
});
1
KHALID
var editor = CKEDITOR.instances.help_ldesc;         
editor.setData(''); 
$.ajax({
url: urlstr, // Url to which the request is send
type: "POST",             // Type of request to be send, called as method
data:{action:"ex_form"}, // Data sent to server, a set of key/value pairs (i.e. form fields and values)
contentType: false,       // The content type used when sending data to the server.
cache:false,             // To unable request pages to be cached
processData:false,        // To send DOMDocument or non processed data file it is set to false
success: function(data)   // A function to be called if request succeeds
{
    //alert(data);
    var data1=data.split("~`");
    $('#help_id').val(data1[0]);
    $('#help_title').val(data1[1]);
    $('#help_sdesc').val(data1[2]);                 

    editor.setData(''+data1[3]);    
    var edata = editor.getData();
    alert(edata);
}
});

このコードを使用してください。(help_ldesc)は私のテキストエリア名です。

1

次のようなデータとクエリ文字列の送信方法を使用する必要があります。

$(document).ready(function()
{
  var querystring="menu_id="+menu_id+"&info=3";
  $.ajax({
  method: "POST",
  url: "/inc/ajax/basic.php",
  data:querystring,
  success: function(msg)
   {
     CKEDITOR.instances['editor1'].setData(msg);
   }
  });
});
1
Vaibhav Jain

関数内で使用した私の経験から、時々正しく動作しません。以下で使用することをお勧めします。

    $(document).ready(function () {
    ...
    // instance, using default configuration.
    CKEDITOR.replace('editor1');
    //set data
    CKEDITOR.instances['editor1'].setData(data);
    ...
    });
0
liridons