0

TinyMCE エディタで適切なコンテンツを取得できません。シナリオは次のようなものです: 管理者がフォームに入力すると、フォームは 3 つのページに分割されます (jquery で切り替えます)。最初のページで、顧客の情報 (名前、会社名など) を入力します。最後のページでは、電子メールを送信できます。TinyMCE テキストエリアには接頭辞付きのテキストがあり、最初のページで管理者が名前を入力するとすぐに、そのテキストの間に顧客の名前が必要です。で動作します

$('input[name="info_name"]').change(function(){
    var info_name = this.value;
    tinyMCE.activeEditor.setContent(info_name);
});

ただし、テキストはプレフィックスの間にある必要があるため、プレフィックス付きのテキストはありません。私が欲しいものの生の例:

<div page1>
    <input name="name">blablabla</input>
</div>
<div page3>
    <textarea>
        dear $name,
        prefix text
    </textarea>
</div>

プレフィックスのコンテンツと顧客の名前を含む非表示の div を作成して、div からコンテンツ全体を抽出し、それを TinyMCE に挿入しましたが、コンソールに「置換」メソッドがありません。

$('input[name="info_name"]').change(function(){
    var info_name = this.value;
    $('span#info_name').append(this.value);
    var mailcontent = $('div#message-hidden').val;
    tinyMCE.activeEditor.setContent(mailcontent);
});

誰?

4

1 に答える 1

0

あなたのHTMLが

<p><input type="text" name="first_name" class="test" /></p>

<textarea>Your content here.</textarea>

<div class="dummy">Your __NAME__ here!</div>

この JS は、テキスト入力が変更されたときにアクティブな TinyMCE エディターのコンテンツを設定します

tinymce.init({selector:'textarea'});

$(document).on('change', $('input.test'), function(){
   dummy_html = $('div.dummy').html();
   editor_content = dummy_html.replace("__NAME__", $('input.test').val());
   tinymce.activeEditor.setContent(editor_content);
});

ここでの実例http://fiddle.jshell.net/4n3Cr/

于 2013-10-03T08:46:08.967 に答える