私はasp.netで開発しており、画面にCKEDITORがあり、テキストを追加する必要がある場所にカーソルがあります。ボタンがページに存在し、ボタンを押すと、ボタンが押された時点でカーソルがあった場所にユーザーがテキストを挿入できるテキストエリアを持つモーダルボックスが開きますが、テキストが失われたり、ボタンの場所で置き換えられたりすることはありません。カーソル。これはJavaScriptで可能ですか
1 に答える
2
テキストまたはhtmlソースとして挿入するかどうかに応じて、ユーザー入力をckeditorのinsertTextまたはinsertHtml関数に渡すことができます。これらは、エディターのカーソル/フォーカス位置に挿入されます。
したがって、ユーザー入力が次のような場合:
Some text and link: <a href="www.on47.com">on47</a>
insertText は、ユーザー入力をテキストとして配置します。html が含まれている場合でも、コンテンツはテキストとして表示され、クリック可能なリンクではないため、次のように挿入されます。
Some text and link: <a href="www.on47.com">on47</a>
insertHtml は実際にそれを html ソースとして配置するため、ハイパーリンクはクリック可能なリンクとして表示されます。
テキストとリンク: on47
//you can get the user input from text area using javascript like below
var insertMe = document.getElementById('textAreaId').value;
//or using jquery as below
//var insertMe = $('#textAreaId').val();
//get your editor instance and insert the text or html
var editor = CKEDITOR.instances.wckEditor;
editor.insertText(insertMe);
OR
//editor.insertHtml(insertMe);
使用している ckeditor のバージョンを教えてください ckeditor 4 の insertHtml は、オプションの 2 番目のパラメーターを受け入れ、デフォルトで html に設定されます 挿入モード insertHtml の 2 番目のパラメーターは、テキスト、html、unfiltered_html などのモードです。
editor.insertHtml(insertMe, 'text');
于 2013-03-26T13:59:41.257 に答える