2010-12-14 8 views
2

私はajaxフォーム(http://jquery.malsup.com/form/)を持っています。私はTinyMCEエディタをインストールするためにjQueryプラグインを使用しています。しかし、私はajaxリクエストでtextareaコンテンツを取得することはできません。これは、TinyMCEのエディタiframeにあるためです。私はGoogleからいくつかのチュートリアルを試みたが、すべて私のために働くことに失敗した。エディタが表示されますが、ajaxリクエストを送信すると、編集されたtextareaコンテンツが取得されません。ここでjQueryプラグインを使用したAjaxフォームのTinyMCEエディタ

は、私はTinyMCEのエディタをインストールする方法ですが、これは

$("textarea.tinymce").tinymce({   
    script_url : tinymceUrl, 
    mode : "none", 
    theme : "simple", 
    setup : function(ed) { 
     ed.onChange.add(function() { 
      tinyMCE.triggerSave(true,true); 
     }); 
    } 
}); 
+0

どのようにコンテンツをつかむしようとするのですか? – Thariama

+0

http://wiki.moxiecode.com/index.php/TinyMCE:Functions#tinyMCE.triggerSave – newbie

+0

古いバージョンのAPIを指しています。新しいAPIはhttp://wiki.moxiecode.com/にありますindex.php/TinyMCE:API/tinymce.EditorManager/triggerSave –

答えて

4

onChangeイベントを最高の状態で、「不確実」で失敗します。私は最近、私がやっているプロジェクトでこの問題を解決し、フォーカスをバインドしなければなりませんでした&イベントをぼかしました。私のセットアップハンドラでは、以下のことを行いました。私は自分のプロジェクトに固有のコードを削除し、保存する場所にコメントを付けました。サイドノートでは

ed.onPostRender.add(function(editor, cm) { 
    // Register focus and blur events on BOTH the window and the doc, this way it works properly in 
    // IE, Firefox & Chrome 
    tinymce.dom.Event.add(editor.getWin(), 'focus', function(e) { }); 
    tinymce.dom.Event.add(editor.getWin(), 'blur', function(e) { /* save on blur */ }); 
    tinymce.dom.Event.add(editor.getDoc(), 'focus', function(e) { }); 
    tinymce.dom.Event.add(editor.getDoc(), 'blur', function(e) { /* save on blur */ }); 
}); 

、私はあなたがtriggerSave(真、真)とエディタマネージャ(TinyMCEのを)呼んでいることに気づきました。私は3.3.9.2 APIではそれが見えないので、そこで何をしようとしているのかわかりません。上記のコードでは、エディタ(e)へのハンドルが渡されており、メソッドe.save()を呼び出して保存を実行し、tinyMCEによって装飾されているtextareaフィールドに格納することができます。

希望に役立ちます。

+0

(http://wiki.moxiecode.com/index.php/TinyMCE:Functions#tinyMCE.triggerSave)で提供されているリンクを見てきました。おそらくもうサポートされていない古い2.x APIです。上記で提供したコードが、あなたが試みていることを助けるかもしれないかどうかを見てください。 –

1

Dave GはすでにAPIリンクが古いと述べています(私はtriggerSaveの呼び出しについて不思議でした)。

てみてください

tinyMCE.triggerSave(); 
関連する問題