9

これどうやってするの

function addTinyText(id, text){
//add textarea to DOM
$('<textarea id="txt'+id+'"></textarea>').append(text).appendTo('body');
//init tineMCE
 tinyMCE.init({
        theme : "advanced",
        plugins : "emotions,spellchecker"
});
//add tinymce to this
tinyMCE.execCommand("mceAddControl", false, 'txt'+id);
}

ただし、その結果、新しいtextarea + tinyMCEが作成されるたびに、内部にテキストが表示されなくなります。

私は何が間違っていますか?

4

2 に答える 2

3

私は非常に長い間検索して、同様の問題に対する答えを見つけました。

エディターを表示させることができたとしても、私のコンテンツは投稿されていませんでした。

私はそれを次のように機能させました:

    jQuery('.wysiwyg').tinymce({
      // Location of TinyMCE script
      script_url : 'path/tinymce/tiny_mce.js',

      // General options
      theme : "advanced",
     .........
     .........
     ......... etc

標準のjqueryコードを使用して、クラス名wysiwygのすべてのテキスト領域をtinymceオブジェクトとして開始しました。

ajax呼び出しが完了し、新しいtextareaがロードされたら、次の関数を実行します。

jQuery(".wysiwyg").each(function(){ 
    tinyMCE.execCommand("mceAddControl",false, this.id);
});

今、私のコードはついに正しく投稿されています。

于 2012-12-18T13:18:30.687 に答える
1

ライン

$('<textarea id="txt'+id+'"></textarea>').append(text).appendTo('body');

行である必要があります

$('<textarea id="txt'+id+'"></textarea>').text(text).appendTo('body');
于 2012-02-03T09:19:40.727 に答える