1

newedit.js ファイルに次のスクリプトがあります。

$(document).ready(function() {
    $("[id^=save]").click(function() {
        $("#scholarship-short_desc").val("test");
        alert($("#scholarship-short_desc").val());
        $("form").submit();
    });

    $("#scholarship-short_desc").ckeditor();
});

私のhtmlファイルには次のエントリもあります。私はckeditor 3.6.5を使用しています。

<script src="/myapp/javascripts/ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="/myapp/javascripts/ckeditor/adapters/jquery.js" type="text/javascript"></script>
<script src="/myapp/javascripts/scholarships/newedit.js" type="text/javascript"></script>

これにより、自分のページに ckeditor が正しく表示されます。しかし、val 関数を使用して textarea の値を設定しようとすると (ここ (ckeditor の jquery ガイド) で説明されているように)、値が設定されていません。

何か案は?ありがとう!:)

4

1 に答える 1

2

CKEditor はテキストエリアでは動作しませんが、iframe 内の合成 contenteditable 対応の html ページでは動作します。次の方法で、エディターの新しいコンテンツを設定できます。

CKEDITOR.instances.yourInstanceName.setData( '<h1>Your HTML</h1>' );

エディタをテキストエリアと同期させたい場合:

CKEDITOR.instances.yourInstanceName.updateElement();

これは、次の呼び出し時にも自動的に行われます。

CKEDITOR.instances.yourInstanceName.destroy()

yourInstanceNameオブジェクトを参照CKEDITOR.instancesするか、テキストエリアの id/name を読み取ることで見つけることができます (エディターの作成方法によって異なります)。

ハッピーコーディング!;)

于 2012-11-22T22:31:32.840 に答える