2

テキストエリアを投稿しようとしています。TinyMCEリッチテキストがないと、フォームが投稿されます。ただし、リッチテキストを追加すると、iframeによって「description」というテキストエリアから名前が削除されるようです。

TinyMCEはテキストエリアではなく、iframeであることを認識しています。送信すると、「説明」がありません。バックエンドの「説明」データを投稿して取得する方法はありますか?それとも私は何か間違ったことをしていますか?

<script language="javascript" type="text/javascript">
tinyMCE.init({
        theme : "advanced",
        mode : "textareas",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_buttons1 : "bold,italic,underline,bullist,numlist",
        theme_advanced_buttons2 : "",
        theme_advanced_buttons3 : "",
        theme_advanced_buttons4 : "",
        width: "100%"
});

...


<div>
    <label for="id_description">Description</label>
    <textarea class="required input-text full-width" id="id_description" rows="4" name="description"></textarea>
</div>

私のviews.pyで以前に機能したもの:

description = request.POST.get('description','')
..and more stuff

よろしくお願いします。

4

3 に答える 3

3

たぶんあなたはこのパッケージを使うべきです:django-tinymce、それをインストールし(django-tinymce docs)そしてフォームフィールド(モデルテキストフィールド用)を休閑として宣言します:

description = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}), required=False, label="Description")
于 2013-02-05T08:14:32.300 に答える
1

送信時に使用できます

tinymce.get('description').getContent();

エディターのコンテンツを取得します。オプションで、tinymce.triggerSave()を呼び出すことができます。これにより、テキストエリアがエディターのコンテンツで更新されます。

tinyMCE.activeEditor.getContent()単一のエディターを使用していて、クリックされている場合にのみ機能します。

于 2013-02-05T09:52:25.923 に答える
0

を使用してコンテンツを取得できますtinyMCE.activeEditor.getContent()

于 2013-02-04T21:39:37.623 に答える