文本编辑器 - Asp.net mvc

问题描述:

我正在寻找我的asp.net mvc项目的文本编辑器。我能够发现很多文本编辑器在那里工作得很好。文本编辑器 - Asp.net mvc

我在找的是一个只接受像“我是超人”这样的名人的编辑。 我不想将“<p><strong>I am a superman</strong></p>”保存到我的SQL表中,因为我必须通过文本框显示它(例如:<%= Html.TextBox("Remark", Model.empExperience.Remark)%>)。

让我知道。

+0

这就是我所做的。公共字符串StripTags(字符串strHTML) if(string.IsNullOrEmpty(strHTML)) return string.Empty; //从传递的HTML中删除标签 strHTML = HttpUtility.HtmlDecode(strHTML); strHTML = Regex.Replace(strHTML,@“”,string.Empty); return strHTML; } – Hoorayo 2010-09-16 13:39:07

由于您不希望允许使用HTML,因此您最好的办法是简单地从提供的输入中剥离HTML。没有必要为这类事情实现自定义文本编辑器。

看一看:How can I strip HTML tags from a string in ASP.NET?

+0

你的回答听起来不错,但它看起来很复杂,使用“”*>“。比方说,有一个HTML字符串 “<p>我的工作。</P > <p> </P > <p> </P >”。如何使用“”*>“将其转换为”我曾工作过“?我尝试了您提供的链接中的许多示例代码,但无法使其工作。 – Hoorayo 2010-09-16 02:00:18

+1

如果这是您的字符串,您必须先解码它,例如HttpUtility.HtmlDecode(myHtmlEncodedString)在使用RegEx – JustinStolle 2010-09-16 02:18:32

+0

之前,我做了HttpUtility.HtmlDecode(myHtmlEncodedString),并且还添加了Regex.Replace(myHtmlEncodedString,@“”,string.Empty)。它解决了。谢谢Nathan和JustineStolle – Hoorayo 2010-09-16 02:41:27

这是你如何做到这一点(总结弥敦道提供的链接的答案):

private static readonly Regex StripHtml = new Regex("<[^>]*>", RegexOptions.Compiled); 

    /// <summary> 
    ///  Strips all HTML tags from the specified string. 
    /// </summary> 
    /// <param name = "html">The string containing HTML</param> 
    /// <returns>A string without HTML tags</returns> 
    public static string StripHtmlTags(string html) 
    { 
     if (string.IsNullOrEmpty(html)) 
      return string.Empty; 

     return StripHtml.Replace(html, string.Empty); 
    }