<asp:DetailsView ID="DetailsView1" runat="server"
DataSourceID="SqlDataSource1" AutoGenerateRows="False"
DataKeyNames="ID" DefaultMode="Insert" >
...
<asp:TextBox ID="ShortExcerptTextBox" runat="server"
Text='<%#Bind("ShortExcerpt") %>' class="mceEditor"
TextMode="MultiLine"></asp:TextBox>
这是我的代码。
问题是我需要以HttpUtility.HtmlDecode
某种方式#Bind("ShortExcerpt")
以某种方式,但不知道如何。
最初的问题是tinyMCE(富文本编辑器)本身对文本进行编码,但在读取时不对其进行解码。长话:P
所以,请某人,解释,如何HttpUtility.HtmlDecode
将#Bind("ShortExcerpt")
的文字读入?{
日Thnx
答案 0 :(得分:5)
我认为您不能将HtmlDecode
与Bind
一起使用。
所以要么尝试HtmlDecode
代码隐藏中的TextBox:
<asp:TextBox ID="ShortExcerptTextBox" runat="server"
Text='<%# Eval("ShortExcerpt") %>'
OnDataBinding="ShortExcerptTextBox_DataBinding" class="mceEditor"
TextMode="MultiLine">
</asp:TextBox>
protected void ShortExcerptTextBox_DataBinding(object sender, EventArgs e)
{
var txt = (TextBox)sender;
txt.Text = HttpUtility.HtmlDecode(txt.Text);
}
或尝试使用Eval
代替(如果可以接受):
<asp:TextBox ID="ShortExcerptTextBox" runat="server"
Text='<%# HttpContext.Current.Server.HtmlDecode((string)Eval("ShortExcerpt")) %>'
class="mceEditor"
TextMode="MultiLine">
</asp:TextBox>
两者都没有测试过。