0

Jquery UI ダイアログと TinyMCE に問題があります。
テキスト領域へのデータの受け渡しは、UI ダイアログと Jquery でうまく機能します。
したがって、次のようにテキスト領域にデータを設定するとうまくいきます。

        $("#MessageDialog #messageDto_Body").val(messagedata.Body);
        $("#MessageDialog").dialog("open");

tinyMCE エディターをテキスト領域にアタッチすると、エディターが正しく追加されます (UI ウィンドウがなくても、テキスト領域のコンテンツは保持されます)。

tinyMCE.execCommand('mceAddControl', false, 'messageDto.Body');

UI ダイアログでは、領域は空です。

私が見てきたことから、tinyMCE は実際のテキスト領域を隠して新しいものを追加します。また、コンテンツを直接設定しようとしましたが、うまくいきませんでした:

  tinyMCE.activeEditor.setContent(messagedata.Body, {format : 'bbcode'});

何かアドバイス?

更新: Jquery UI Dialog を jqModal に置き換えると、すべてが機能します。問題は TinyMce ではなく、Jquery UI ダイアログに依存している可能性があると思います

4

3 に答える 3

1

おそらく、jQueryTinyMCEプラグインが役立つでしょう。

于 2009-08-27T18:57:11.300 に答える
0

tinyMCEは、テキストエリアを非表示にし、「_」+要素タイプが追加されたテキストエリアのIDを使用して複数の要素を追加します。iframeのコンテンツにアクセスするには、次のようにしてみてください。

$("#content_ifr").contents().find("body").html(messagedata.Body);

ここで、#contentはテキストエリアのIDです。

于 2009-04-15T16:11:39.210 に答える
0

$('#myTextBox').tinymce(...ダイアログを開いた後、TinyMCE jQueryプラグインでエディタを初期化することでこれを解決しました。ダイアログを閉じて再度開いても、jQ UI 1.8.16 では問題が発生しないようです。

于 2011-08-19T13:21:15.797 に答える