Ejemplo n.º 1
0
        /// <summary>
        /// 采用白名单允许富文本编辑器指定标签保存入库,其余标签进行过滤,只保留文本值
        /// </summary>
        /// <param name="content">待过滤的字符串</param>
        /// <returns></returns>
        public static string ConvertSpecialChar(string content)
        {
            if (string.IsNullOrEmpty(content))
            {
                return(string.Empty);
            }
            content = content.Trim();
            //输入文本中含<input><img>等标签时,需将&gt;&lt;等转义后过滤掉
            content = HtmlChartReplace(content);
            Whitelist tagsAttributes = Whitelist.None.AddTags("table", "thead", "th", "tr", "td", "em", "tbody", "strong", "span", "div", "br", "p");

            tagsAttributes.AddAttributes("table", "cellpadding", "cellspacing");
            tagsAttributes.AddAttributes("th", "style");
            tagsAttributes.AddAttributes("tr", "style", "contenteditable");
            tagsAttributes.AddAttributes("td", "style");
            tagsAttributes.AddAttributes("p", "class", "contenteditable");
            tagsAttributes.AddAttributes("div", "style");
            content = NSoup.NSoupClient.Clean(content, tagsAttributes);
            return(content);
        }