You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Razor页面按条件显示语义元素?图标显示为字符串问题求助

解决方案

你的问题是Razor默认会对输出的字符串进行HTML编码,导致<i>标签被当成纯文本显示,而非渲染成图标。只需用Html.Raw()方法包裹变量,告诉Razor直接渲染HTML内容即可:

修改后的代码:

@{
   string successIcon = "<i class='fas fa-check-circle' style='color: #3fd421;'></i>";
   string failedIcon = "<i class='fas fa-times-circle' style='color: #e63737;'></i>";
}
    
<td class="lft">@Html.Raw(UserAccessHealth.Contains("Healthy") ? failedIcon : successIcon)  UserAccess:</td>

说明

  • Html.Raw()会跳过Razor的HTML编码逻辑,直接将字符串作为HTML内容输出,这样浏览器就能正确解析Font Awesome的<i>标签,显示对应的图标。
  • 需确保页面已引入Font Awesome的CSS文件,否则图标无法正常加载。

内容的提问来源于stack exchange,提问作者Manasseh Ziki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 03:42:06