4

setData("") を使用してコンテンツをクリアした後に何かを挿入しようとし、次に insertText メソッドを使用して何かを挿入します。しかし中身は空のまま。

関連コード:

CKEDITOR.instances.content.setData("");
CKEDITOR.instances.content.focus();
CKEDITOR.instances.content.insertText("the text I want to insert");

上記のコードは機能しません。誰でも私を助けることができますか?setData("") を使用するのではなく、CKEditor でコンテンツをクリアする別の方法を見つけるか、setData の後に insertText メソッドを機能させると、どちらも私の問題を解決するのに役立ちます。どうもありがとう!</p>

4

4 に答える 4

1

私にとってもうまくいきません。バグである必要があります。しかし、jqueryには回避策があります。

$('#content').val('the text I want to insert');

jqueryアダプターについては、こちらをご覧ください:http: //ckeditor.com/blog/CKEditor_for_jQuery

于 2012-08-17T06:24:11.997 に答える
1

私は同じ問題に遭遇し、解決策を見つけました。エディターを「クリア」するときは、空の文字列を使用しないでください。代わりにCKEDITOR.yourEditor.setData('<span></span>')、または (おそらく) 何も表示しない他の同等の「有効な html」を使用してください。今のところ、スパンでこれを試しただけです。setData メソッドへの後続の呼び出しは失敗しません。楽しみ。

于 2013-01-14T11:12:58.887 に答える
0

私は同じ問題を抱えていましたが、受け入れられた解決策で提案されているようにjqueryアダプターをインストールすることは私にとって選択肢ではありません。

2番目の呼び出しで次の回避策を使用して機能させることができました。

setTimeout(function(){
  CKEDITOR.instances["myEditor"].setData(newText);
}, 0);

ここからアイデアを得ました: https://dev.ckeditor.com/ticket/10663#comment:7

于 2015-11-08T03:29:12.307 に答える