2012-04-26 2 views
1

세부 정보보기에서 html로 디코딩하는 방법은 무엇입니까?

<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

그래서 그냥 누군가가, 설명해주십시오, 어떻게 #Bind("ShortExcerpt")로하시기 바랍니다 읽히는 텍스트를 HttpUtility.HtmlDecode하는 방법?

난 당신이 BindHtmlDecode를 사용할 수 있다고 생각하지 않습니다

답변

5

thnx.

<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를 사용하려고 :

그래서 두 코드 숨김에서 HtmlDecode에 텍스트 상자를 시도

<asp:TextBox ID="ShortExcerptTextBox" runat="server" 
    Text='<%# HttpContext.Current.Server.HtmlDecode((string)Eval("ShortExcerpt")) %>' 
    class="mceEditor" 
    TextMode="MultiLine"> 
</asp:TextBox> 

모두 아직 테스트하지.

+1

예. 공장. thnx. 나는 뒤에있는 코드를 사용했다. – b0x0rz

+0

아마도 후속 질문에 도움을 줄 수 있습니까? 귀찮게해서 미안 해요 : (http://stackoverflow.com/q/10342792/101055 thnx – b0x0rz

관련 문제