【发布时间】:2015-11-17 19:47:52
【问题描述】:
我有一个来自启用 HTML 的电子邮件的字符串,类似于:
</div><span color="red">Hi how are you?!</span></div><table><tr><td>Company Information</td></tr></table>
等等[这是一长串的东西,但你明白了。有<div>..<spans>..<table>等等。
我想在格式为 html 的文本框中显示文本 [它将根据<table>..<span> 等对其进行格式化,同时删除<span> 等的实际文本来自文本框的文本。
我需要这样做,因为我收到一个页面错误,因为它读取 <span> 等是一个安全问题。
我目前阅读全文并消除问题的方式是这样的:
If Not DsAds.Tables(0).Rows(0).Item(0) Is DBNull.Value Then
Dim bodyInitial As String = DsAds.Tables(0).Rows(0).Item(0).ToString()
Dim newbody As String = bodyInitial.Replace("<br>", vbNewLine)
newbody = newbody.Replace("<b>", "")
newbody = newbody.Replace("</b>", "")
Bodylisting.Text = newbody
End If
我尝试加入以下内容:
Dim bodyInitial As String = DsAds.Tables(0).Rows(0).Item(0).ToString()
Dim myEncodedString As String
' Encode the string.
myEncodedString = bodyInitial.HttpUtility.HtmlEncode(bodyInitial)
Dim myWriter As New StringWriter()
' Decode the encoded string.
HttpUtility.HtmlDecode(bodyInitial, myWriter)
但我在使用 HTTpUtility 和字符串时遇到错误
问题:
所以我的问题是,有没有办法实际查看 HTML 格式并以这种方式填充文本框,还是我必须坚持使用我的 .Replace 方法?
<asp:TextBox ID="Bodylisting" runat="server" style="float:left; margin:10px; padding-bottom:500px;" Width="95%" TextMode="MultiLine" ></asp:TextBox>
【问题讨论】: