2016-09-16 78 views
0
<td> 
    @(vehicle.SearchResult.Mpg == null ? 
    Html.Raw("<a href='Model.ContactDealerUrl'>Please Contact Dealer</a>") : 
    vehicle.SearchResult.Mpg + " " + Html.GetResourceTranslation("UclMpg").ToHtmlString()) 
</td> 

嗨,我是新来的堆栈溢出,但我想呈现HTML标记作为链接文本,如'请联系经销商',但当呈现给浏览器返回如“请联系经销商”。任何有关如何解决这个问题的帮助将非常感谢。如何呈现HTML为文本

谢谢

+1

你能解释一下你的问题吗?我不明白问题是什么。 –

+0

当条件为真时返回的Html返回与Html.Raw参数完全相同,我试图让它返回字符串“Please Contact Dealer”作为链接,但是它会返回整个字符串,ancor标签和所有@JeffSiver – EmperorDev

+0

你试图在你的问题中加粗Html.Raw部分,还是实际在你的剃须刀视图文件中是双星号?否则,我没有看到任何问题。 Raw应该将HTML作为可点击的链接返回。 – seagulledge

回答

0

如果我了解您的问题,以下详细信息可能会帮助您解决问题。

如果你原来的代码如下所示:

@Html.Raw("<a href='Model.ContactDealerUrl'>Please Contact Dealer</a>").ToHtmlString() 

然后取出ToHtmlString(),并在条件表达式else部分也返回IHtmlString(标签/链接等元素)。

如果ToHtmlString()@Html.Raw(...)被调用,那么它会呈现原始Html字符串而不是元素。

无效:@(some condition? IHtmlString : string)。在条件表达式中,真/假返回值应该是相同或隐式可转换的。

希望对你有所帮助...