2

作業中のASPNETWebサイトにCKEditor4を実装しようとしていますが、編集した資料をインラインエディターから保存する方法がわかりません。古いバージョンでの方法はわかっていますが、このためのプロセスを理解していません。

フォーラムを調べました...v4フォーラムはありません。

ドキュメントを探しました...見つかりませんでした。

これは簡単な作業だと思いますが、どうすればいいのかわかりません。

4

2 に答える 2

5

でデータを取得できますCKEDITOR.instances.editor1.getData()。次に、AJAX 経由で送信するか、入力フィールドの値として保存できます。これを定期的に行うには、次の方法に従います。

CKEDITOR.disableAutoInline = true;

var editor = CKEDITOR.inline( 'editable' );

var savedData, newData;
function saveEditorData() {
    setTimeout( function() {
        newData = editor.getData();

        if ( newData !== savedData ) {
            savedData = newData;

            // Send it with jQuery Ajax
            $.ajax({
                url: 'yourUrl',
                data: savedData
            });

            // Or store it anywhere...
            // ...
            // ...
        }

        saveEditorData();
    }, 500 );
};

// Start observing the data.
saveEditorData();

また、 submit イベントを監視し、一部の (非表示の) フォーム フィールドをデータで更新することもできます。

楽しむ!

于 2012-09-25T08:02:35.563 に答える
1

AJAX で取得しようとしていますか、それともフォームで送信しようとしていますか? たとえば、 Lorem Ipsumを使用した右上のインライン エディター領域の値は、古いバージョンのように簡単に取得できます。

CKEDITOR.instances.editor1.getData().

XHTML 出力の例では、機能しているように見える単純なフォームがあり、(静的) インライン エディターを使用することはまったく同じであると思います。

要素をインラインでエディターに動的に変換する場合、submit イベントにバインドし、ループを allCKEDITOR.instancesで送信する前に、それらのデータを非表示のフィールドに取得します。非表示フィールドの名前付けまたは特定の非表示フィールドがどの動的エディターに対応するかについては、自分で把握する必要があります:)

于 2012-09-25T07:57:22.283 に答える