Как получить содержимое текстовой области Tinymce с помощью JavaScript
У меня есть массив контента, то, как мы получаем содержание Tinymce textarea в JavaScript
12 ответов
Допустим, ваш экземпляр mce textarea:
<textarea id="editor1" ....></textarea>
тогда вы получаете контент следующим образом:
var content = tinyMCE.getContent('editor1');
если вы имеете в виду, что у вас есть несколько экземпляров редактора mce на одной странице, и вы хотите получить контент, попробуйте этот подход:
var inst, contents = new Object();
for (inst in tinyMCE.editors) {
if (tinyMCE.editors[inst].getContent)
contents[inst] = tinyMCE.editors[inst].getContent();
}
Приведенный выше код добавляет каждый редактор содержимого в массив
Я решил это с кодом:
// Get the HTML contents of the currently active editor
tinyMCE.activeEditor.getContent();
// Get the raw contents of the currently active editor
tinyMCE.activeEditor.getContent({format : 'raw'});
// Get content of a specific editor:
tinyMCE.get('content id').getContent()
activeEditor является текущим редактором, но я использую tinyMCE.get('editor1').getContent() не может получить значение моего редактора, надеюсь, это поможет вам
моя домашняя страница 机器鸟
API Tinymce: http://www.tinymce.com/wiki.php/API3:method.tinymce.Editor.getContent
У меня такая же проблема. Я решил с помощью этого кода:
tinyMCE.get('editor1').getContent();
Источник: спок это автор
В моем случае (v4.3.12) ничего из вышеперечисленного не сработало, поэтому я сделал обходной путь:
HTML-код:
<div id="wrapper">
<textarea id="editable_container" name="editable_container"></textarea>
</div>
Код JQuery:
var iframe = $('#editable_container_ifr');
var editorContent = $('#tinymce[data-id="editable_container"]', iframe.contents()).html();
console.log(editorContent);
куда editable_container
текстовое поле моего редактора tinyMCE, идентификатор iframe редактируемой области генерируется путем добавления _ifr
постфикс к идентификатору заполнителя, и content-editable
контейнер (который содержит отформатированный текст), имеет идентификатор tinymce
с data-id
атрибут идентификатора заполнителя.
Использовать getContent()
из TinyMCE API.
Допустим, вы инициализировали редактор в текстовой области с id = "myTextarea". Сначала войдите в редактор, используя тот же идентификатор, затем вызовитеgetContent()
. Например:
var myContent = tinymce.get('myTextarea').getContent();
Или вместо доступа к редактору по идентификатору вы можете получить доступ к активному редактору:
var myContent = tinymce.activeEditor.getContent();
Если вы хотите получить содержимое TinyMCE без тегов HTML, вы можете передать параметр, чтобы указать, что вы хотите получить результат в виде открытого текста. Например:
var myContent = tinymce.get('myTextarea').getContent({format: 'text'});
Дополнительная информация и примеры здесь: https://www.tiny.cloud/blog/how-to-get-content-and-set-content-in-tinymce.
Эта работа для меня для версии 4 (9.8):
var Content = tinyMCE.editors['Your_ID'].getContent();
ни один из этих кодов не работает ни в 3.x, ни в последних версиях 4.x
tinyMCE.getContent не является функцией
Для версии 4.1.9 у меня сработало следующее:
Примечания:
-
.get()
требуется идентификатор, а не класс -
tinymce.get()
илиtinyMCE.get()
оба работают - верхний регистрMCE
не имеет значения
Если вы более знакомы с (и используете оболочку jquery), вы также можете сделать это, используя это:
$('#editor1').tinymce().getContent();
Где (editor1) - ваш селектор.