Получение значения из текстовой области TinyMCE
У меня есть редактор новостей для моего сайта, с которым я пользуюсь TinyMCE. То, что я хотел бы сделать, это нажать кнопку (за пределами самого редактора TinyMCE), которую я могу щелкнуть, чтобы сканировать текстовое поле для любых изображений, а затем перечислить эти изображения в качестве параметров, используемых для миниатюры для указанной новостной статьи.
Для понимания того, что я имею в виду, см. эту ссылку здесь: https://docs.google.com/leaf?id=0B05m73kzudwPNzUwZjkyNmItYjZkMy00NTdlLTlkNDctOGRhYThjMzNjNTM5&hl=en_US
Моя проблема в том, что document.getElementById('NewsArticle'). Значение ничего не возвращает, если в текстовом поле есть текст
Другая потенциальная проблема заключается в том, что то, что показано в текстовой области, - это не фактический код, а изображения и т.д., поэтому я не был уверен, что он даже будет работать в первую очередь, но с тех пор, как форма отправляется данными [Новости] [article] значение возвращается в текст, я думал, что может быть шанс.
Если кто-нибудь знает, как получить контент или код для текстового поля tinyMCE или получить лучшее решение, мне было бы интересно услышать
Ответы
Ответ 1
TinyMce имеет api для доступа к контенту из редактора.
Этот код захватит html из активного редактора:
// 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()
Ответ 2
Try
window.parent.tinymce.get('contentID').getContent();
По какой-то причине стандартный вызов tinymce.get()
не работал у меня, поэтому я попробовал это, и он работает.:)
Ответ 3
Используйте синтаксис ниже, который удалит ненужный символ из вашего текстового поля ввода.
(((tinyMCE.get('YourTextAreaId').getContent()).replace(/( )*/g, "")).replace(/(<p>)*/g, "")).replace(/<(\/)?p[^>]*>/g, "");
Ответ 4
var temp = tinymce.get('textAreaName').save();
console.log(temp);
ИЛИ
var temp =tinymce.get('textAreaName').getContent();
console.log(temp);