2017-10-30 18 views
2

私はCKEditorテキストエリアの値を返すことができ、その中に自分のテキストも書きたいと思っています。CKEditor 5の価値を得るには?

私はCKEditor 5 CDNを使用しました。

var text = $('textarea#editor').val(); 

とすることで、データを設定します:

$('textarea#editor').html(""); 
まず、この私のコードはTextAreaのそれは私がすることによってCKEditorバージョンの前にテキストエリアからデータを取得するために使用

<script src="https://cdn.ckeditor.com/ckeditor5/1.0.0-alpha.1/classic/ckeditor.js"></script> 

<textarea class="inputStyle" id="editor" name="content" placeholder="Write your email.."></textarea> 
<script>ClassicEditor.create(document.querySelector('#editor')).catch(error => { console.error(error); }); </script> 

正常に動作します

しかし、私は今失われていますか?私は多くの方法を試みた...正しい方法は何ですか?

+0

を使用してデータを取得します。このリンクを確認してください。https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_savedata –

+0

私はそれを試して、それは動作しませんか? –

+0

はもっとコードを共有し、ckeditをどのように作成し、インスタンスを作成し、データを取得するために –

答えて

6

作成したエディタを取得または保存してから、getData()関数を使用する必要があります。 編集を保存するために.then作成を追加することができます。その後、

var myEditor; 

    ClassicEditor 
     .create(document.querySelector('#editor')) 
     .then(editor => { 
      console.log('Editor was initialized', editor); 
      myEditor = editor; 
     }) 
     .catch(err => { 
      console.error(err.stack); 
     }); 

とデータへのアクセスにCKEditorバージョンのインスタンスを作成する必要が

myEditor.getData(); 
+2

... 'myEditor.setData() 'はエディタでデータを設定するためのものです。エディタのデータは自動的にtextareaに保存されないので、フォームを送信する前に '$( 'textarea#editor').html(myEditor.getData())'のようなことをする必要があります。 –

+1

おかげでそれは動作します! –

+0

次のように正確に試してみました。 "getDataプロパティが未定義です。これは私のコードです:var editorinstance; ClassicEditor.create(document.querySelector( '#editor')) .then(editor => { editorinstance =エディタ;。 })キャッチ(エラー=> { console.error(エラー); }); 警告(editorinstance.getData()); – Scott

関連する問題