我们使用的模板具有这样的结构设置。
<li><a href="dashboard.html"><span class="iconfa-laptop"></span>Dashboard</a></li>
Razor 允许我们使用 @Html 助手。
<li>@Html.ActionLink("Home", "Index", "Home")</li>
上面在链接文本的左侧添加了一个图标。有没有办法使用 Html 助手复制这个结构?
还是手动输入html的唯一方法?
我们使用的模板具有这样的结构设置。
<li><a href="dashboard.html"><span class="iconfa-laptop"></span>Dashboard</a></li>
Razor 允许我们使用 @Html 助手。
<li>@Html.ActionLink("Home", "Index", "Home")</li>
上面在链接文本的左侧添加了一个图标。有没有办法使用 Html 助手复制这个结构?
还是手动输入html的唯一方法?
尝试这种方式使用Url.Action
而不是Actionlink
<li><a href="@Url.Action("Index", "Home")"><span class="iconfa-laptop"></span>Dashboard</a></li>
您所需要的只是生成路径,这样就可以了。否则,您将不得不创建一个辅助扩展ActionLink
来获取 innerHTML 内容。
作为替代解决方案,您还可以通过 CSS 轻松完成您想要的事情,而无需担心扩展 HtmlHelper 的功能。另外,它还减少了您的标记,例如
.iconfa-laptop {
display:inline-block;
padding-left: 18px;
line-height:18px;
background: url('your-image') center left no-repeat;
}
<a class="iconfa-laptop" href="dashboard.html">Test Link</a>
然后,您可以简单地执行以下操作:
<li>@Html.ActionLink("Home", "Index", "Home", null, new {@class = "iconfa-laptop"})</li>