2014-04-10 17 views
9

Mam 2 textarea na stronie, która używa tinyMCE.TinyMCE insert content

<textarea id="id1" rows="10" cols="50" name="name1"></textarea> 
<textarea id="id2" rows="10" cols="50" name="name2"></textarea> 

W wersji 3 TinyMCE, udało mi się to zrobić

$('#id1').tinymce().execCommand('mceInsertContent', false, "content"); 

Teraz od wersji 4, staram się korzystać z tego samego kodu, ale to nie działa. W jaki sposób mogę wstawić treść do konkretnego docelowego obszaru tekstowego?

Odpowiedz

22

Istnieje kilka możliwych sposobów.

W przypadku, gdy redaktor z „ID1” jest aktywny Edytor:

tinymce.activeEditor.execCommand('mceInsertContent', false, 'your content'); 

W przypadku, gdy chcesz użyć ID:

tinymce.get("id1").execCommand('mceInsertContent', false, 'your content'); 

W przypadku masz tylko dwa redaktorzy i edytor z "ID1" został zainicjowany pierwszy:

tinymce.editors[0].execCommand('mceInsertContent', false, 'your content'); 
+0

Bardzo dziękuję za odpowiedź. Używam 'tinymce.get (" id1 ")' i działa poprawnie dopóki nie przetestuję na IE8. Na IE8 pojawia się błąd 'Object expected', gdy próbuję wstawić dane do tinymce. Jak mogę to naprawić? – user1995781

+0

możesz stworzyć dla tego skrzypce? – Thariama

+0

Jak uruchomić execCommand, gdy '{inline: true}'? Powyższy kod umieści "twoją zawartość" poza obszarem tekstowym! –

1

To rzeczywiście można zrobić z

tinymce.get("id1").execCommand('mceInsertContent',false,"content"); 
0

Spróbuj z identyfikatorem dom jako arguement:

tinymce.get("YOUR DOM ID").execCommand('mceInsertContent',false,'use your output content');