Удалите встроенный стиль при сохранении текста редактора richtext в базе данных, используя asp.net - PullRequest
0 голосов
/ 09 июля 2011

Я использую jquery редактор richtext, есть ли способ удалить весь встроенный стиль, который добавляет редактор richtext, так как некоторые пользователи добавляют туда собственный стиль, и это нарушает макет.

есть ли способ с помощью jquery или C #

Ответы [ 2 ]

2 голосов
/ 09 июля 2011

Я нашел этот код:

private string CleanHtml(string html)
{ 
    // start by completely removing all unwanted tags 
    html = Regex.Replace(html, @"<[/]?(font|span|xml|del|ins|[ovwxp]:\w+)[^>]*?>", "", RegexOptions.IgnoreCase); 
    // then run another pass over the html (twice), removing unwanted attributes 
    html = Regex.Replace(html, @"<([^>]*)(?:class|lang|style|size|face|[ovwxp]:\w+)=(?:'[^']*'|""[^""]*""|[^>]+)([^>]*)>","<$1$2>", RegexOptions.IgnoreCase); 
    html = Regex.Replace(html, @"<([^>]*)(?:class|lang|style|size|face|[ovwxp]:\w+)=(?:'[^']*'|""[^""]*""|[^>]+)([^>]*)>","<$1$2>", RegexOptions.IgnoreCase); 
    return html;
}

отсюда:

Удалить атрибуты Microsoft Class и Style

HTH

1 голос
/ 28 марта 2012

Я сам столкнулся с этой проблемой и не смог найти решение, которое бы не удаляло ВСЕ теги и форматирование.Было более 100 записей, пронизанных всевозможными стилями, которые должны были быть одинаковыми.В итоге я «сбросил» их с помощью CSS:

span{font-family: Arial, Geneva, Helvetica, Verdana !important;font-size: 12px !important;color: #474844 !important;}

Примечание: это не помогло с некоторыми специальными символами, но сделало все стилистики одинаковыми.Надеюсь, это поможет!

...