TinyMCE - получить простой текст - PullRequest
10 голосов
/ 13 марта 2011

В tinyMCE, есть ли способ получить простой текст вместо текста HTML?

Ответы [ 3 ]

26 голосов
/ 06 декабря 2013

Попробуйте это:

var myText = tinyMCE.activeEditor.selection.getContent({ format: 'text' });
6 голосов
/ 02 августа 2014
var rawtext = tinyMCE.activeEditor.getBody().textContent;
0 голосов
/ 12 ноября 2013

Я только что попробовал этот подход:

editor.getContent()
   .replace(/<[^>]*>/ig, ' ')
   .replace(/<\/[^>]*>/ig, ' ')
   .replace(/&nbsp;|&#160;/gi, ' ')
   .replace(/\s+/ig, ' ')
   .trim();
  • Заменяет открывающие и закрывающие HTML-теги пробелом
  • Заменяет различные известные специальные символы пробелом (также добавьте ваши)
  • Заменяет несколько пробелов одним пробелом

Работает достаточно хорошо, но, очевидно, не идеально.Для целей подсчета слов мне нужно только приблизительное значение простого текста, поэтому я готов игнорировать угловые случаи, такие как выделение части слова полужирным или курсивом (при замене <b>a</b><i>x</i> на два слова вместо * a b будут выводиться два отдельных слова)1014 *).

Это расширение Регулярное выражение для удаления тегов HTML из строки

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...