2012-12-24 19 views
14

Я начинаю на Javascript/TinyMCE, и я пытаюсь понять, как можно получить содержимое HTML из редактора и показать его с помощью простой функции alert().Как извлечь содержимое HTML из редактора TinyMCE

Я этот минималистский конфигурации на моей странице HTML:

<div id="tiny"> 
<script type="text/javascript"> 
tinyMCE.init({ 
     // General options 
     mode : "specific_textareas", 
     editor_selector : "mceEditor" 
}); 
</script> 
</div> 

<form method="post" action="somepage"> 
     <textarea id="myarea1" class="mceEditor">This will be an editor.</textarea> 
</form> 

На TinyMCE Website, они объяснили, что я должен использовать это:

// Get the HTML contents of the currently active editor 
console.debug(tinyMCE.activeEditor.getContent()); 

И here тоже

tinymce.activeEditor.getContent() 

Я не знаю, почему это не работает

У кого-то есть идея?

ответ

21

Я не знаю, почему он не работает

Это не работает, потому что

console.debug(tinyMCE.activeEditor.getContent()); 

tinymce.activeEditor.getContent(); 

эти заявления не выполняется.

Попробуйте следовать этим FIDDLE ....

tinyMCE.init({ 
     // General options 
     mode : "specific_textareas", 
     editor_selector : "mceEditor" 
}); 

Функция для получения контента ....

function get_editor_content() { 
    // Get the HTML contents of the currently active editor 
    console.debug(tinyMCE.activeEditor.getContent()); 
    //method1 getting the content of the active editor 
    alert(tinyMCE.activeEditor.getContent()); 
    //method2 getting the content by id of a particular textarea 
    alert(tinyMCE.get('myarea1').getContent()); 
} 

Получить содержимое редактора по нажатию кнопки ...

<button onclick="get_editor_content()">Get content</button> 
+0

Большое вам спасибо за вашу помощь. Это очень хорошо объяснено, я понимаю сейчас :) – Ikes

2

Возможно, это так? Ваша переменная tinyMCE, но вы звоните getContent() по телефону tinymce. JS является чувствительным к регистру;)

1

Я искал решение и попробовал некоторые из вышеперечисленных, а затем посмотрел больше на документацию по тинимусу и что это эффективно.
Использование Tiny MCE 4

function getHTML() 
{ 
    tinymce.activeEditor.on('GetContent', function(e) { 
    console.log(e.content); 
    }); 
} 

просто вызвать эту функцию с OnClick и посмотреть, что результаты ...
Мой источник: создает http://www.tinymce.com/wiki.php/api4:class.tinymce.ContentEvent

0

TinyMCE iframe в формате '#textareaid' + '_ ifr' Таким образом, используя jquery, мы можем запросить содержимое HTML текстовой области, которая вам нравится

Идентификатор iframe будет вашим текстовым полем Id с добавлением «_ifr». Поэтому вы можете извлекать содержимое HTML из tinyMce

$('#textareaId_ifr').contents().find("html").html(); 
Смежные вопросы