Подтвердить что ты не робот

Как извлечь содержимое HTML из редактора TinyMCE

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

У меня есть эта минималистская конфигурация на моей странице 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());

И здесь тоже

tinymce.activeEditor.getContent()

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

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

4b9b3361

Ответ 1

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

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

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> 

Ответ 2

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

Ответ 3

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

Использование крошечного 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

Ответ 4

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

id iframe будет вашим идентификатором textarea с добавленным к нему "_ifr". Таким образом, вы можете извлекать содержимое HTML из tinyMce

$('#textareaId_ifr').contents().find("html").html();