在我的ASP.NET网页中,我检索了一些在代码块中进行HTML编码的文本。它显示文本,但不格式化。如何显示带格式的文本?
我在使用和不使用HTMLDECODE的情况下尝试了它,但没有运气
我的ASP页面(这是在转发器中):
<ItemTemplate>
<div class="result" data-pageid="<%#:Item.PageId %>"
style="<%#: getBackgroundImage(Item.ImagePath) %>" >
<div>
<%#: Server.HtmlDecode(Item.HighlightedText) %>
</div>
</div>
</ItemTemplate>
文字显示如下:
警方今天在市区逮捕了50 <em>protesters</em>
。
我希望它显示如下:
警方今天在市中心逮捕了50名抗议者。
编辑:我还没试过<literal>
和<pre>
。
答案 0 :(得分:0)
您可以尝试使用eval() e.g。
&lt;%#DataBinder.Eval(Container.DataItem,“Name”)%&gt;仅适用于&lt;%#DataBinder.Eval(Container.DataItem,“Price”,“{0:c}”)%&gt;
'&gt;查看详情
答案 1 :(得分:0)
我希望我不必去看后面的代码,但这就是我最终要做的事情。我在下面发布了我的代码,但如果有人知道ASP页面中的这个使用和嵌入式代码块,我很乐意听取您的意见。
在asp页面中:
<div>
<asp:Label ID="lblSearchResult" runat="server" Text="ResultText"></asp:Label>
</div>
背后的代码:
protected void pageResults_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
PageResult p = e.Item.DataItem as PageResult;
((Label)e.Item.FindControl("lblSearchResult")).Text = p.HighlightedText;
}
}