1

javascript の selectbox の onchange イベントのトリガーで、tinymce 本体にいくつかのコンテンツを入力したいと考えています。いくつか試してみましたが、うまくいきませんでした。正しい方向に導いてください。テキストエリアにtinymceを追加する私のコードは次のとおりです

$(function() {
appendTinyMCE();
function appendTinyMCE(){
    tinyMCE.init({

        // General options
        mode : "textareas",
        theme : "advanced",
        plugins : "preview",
        // Theme options
        theme_advanced_buttons1 : "forecolor,backcolor,|,justifyleft,justifycenter,justifyright,justifyfull,bullist,numlist,|,formatselect,fontselect,fontsizeselect,sub,sup,|,bold,italic,underline,strikethrough",
        theme_advanced_buttons2 : "",
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true

});}

});

ここにhtmlコードがあります

<td>
        <textarea rows="15" name="MyTinymceContent" cols="90" >MyTestContent</textarea>

ここで、javascript の選択ボックスの変更時に、tinymce に新しいコンテンツを入力したいと考えています。だから私は選択ボックスの変更時に以下のコードスニペットを書きます

 function populateMyTinyMCE() {
  document.form.MyTinymceContent.value ="MyNewContent";
 }

ただし、tinymce 本体には新しいコンテンツを入れません。ここで何が欠けているのかわかりませんか?

4

3 に答える 3

2

イベントトリガーで次のいずれかを呼び出すことができます。

tinyMCE.get('your_editor').setContent("MyNewContent");
//OR
tinyMCE.activeEditor.setContent('MyNewContent');

参照:詳細はこちら

于 2012-07-17T11:04:48.360 に答える
2

Tinymce はテキストエリアと等しくありません。エディターの初期化時に contenteditable iframe が作成されます。この iframe はエディターのコンテンツを保持し、時々エディターのソース html 要素 (この場合はテキストエリア) に書き戻されます。setContentエディターのコンテンツを設定するには、tinymce関数を使用する必要があります。代替案も示します。

 function populateMyTinyMCE() {

    var editor = tinymce.editors[0];

    // other ways to get the editor instance
    // editor = tinymce.get('my editor id');
    // editor = tinymce.activeEditor;

    editor.setContent('my new content');

    // alternate way of setting the content
    // editor.getBody().innerHTML = 'my new content';
 }
于 2012-07-17T11:06:14.493 に答える
0

試す

tinyMCE.activeEditor.setContent("MyNewContent"); 
于 2012-07-17T10:59:57.390 に答える