Итак у нас есть JavaScript и текст, содержащий в себе html-форматирование. Причем теги, использованные для форматирования могут быть любыми, а также иметь атрибуты, стили и т. п. Наша цель - получить обычный плоский текст.
Задача решается следующим JavaScript с использованием регулярных выражений:
source = "<p style="padding-left: 30px;">Для изменения оформления оглавления в рамке веб-страницы <em>необходимо сначала</em> поместить курсор внутрь рамки, содержащей оглавление. Чтобы изменить оформление оглавления в рамке веб-страни<span style="color: #3366ff;"><span style="background-color: #00ff00;">цы, которая использует гиперссылки, измените свой</span></span>ства с<sub>ти</sub><sup>ля</sup> гиперссылки. Чтобы изменить текст отдельной записи, найдите источник записи, измените его, а затем <strong>обновите оглавление</strong>, указатель, таблицу ссылок или список иллюстраций.</p>";
reg = /<.*?>/gi;
dest = dest.replace(reg, '');
alert (dest);
На выходе получаем:
Для изменения оформления оглавления в рамке веб-страницы необходимо сначала поместить курсор внутрь рамки, содержащей оглавление. Чтобы изменить оформление оглавления в рамке веб-страницы, которая использует гиперссылки, измените свойства стиля гиперссылки. Чтобы изменить текст отдельной записи, найдите источник записи, измените его, а затем обновите оглавление, указатель, таблицу ссылок или список иллюстраций.
Спасибо!
ОтветитьУдалитьОчень помогло!
Алексей. а Вы не в курсе, есть ли на JavaScript аналог PHP-функции strip_tags?
Насколько знаю нет.
ОтветитьУдалитьСупер!
ОтветитьУдалитьКруто, вот только вместо символов остаются пробелы и перевод коретки. Например в последнем хроме, ie8
ОтветитьУдалить