如何用图标生成Html.ActionLink

时间:2014-01-30 19:35:16

标签: html asp.net-mvc razor

我开始学习ASP.NET MVC,并且遇到问题,如何生成Html.ActionLink这样的代码:

<a href="~/Views/Home/Create.cshtml" class="btn btn-primary">
    <i class="icon-pencil icon-white"></i>
    <span>
        <strong>Create</strong>
    </span>            
</a>

6 个答案:

答案 0 :(得分:52)

Html.ActionLink()仅支持纯文本链接。

您应该使用<a href="@Url.Action(...)">来获得更复杂的链接。

答案 1 :(得分:29)

我想加入SLaks答案。

<a href="@Url.Action(...)">与user2567619所需的内容一起使用。

<a href="@Url.Action("Create", "Home")" class="btn btn-primary">
    <i class="icon-pencil icon-white"></i>
    <span>
        <strong>Create</strong>
    </span>            
</a>

我认为值得一提的是@Url.Action可以采用这样的参数:

@Url.Action(string actionName, string controllerName) 

@Html.ActionLink可以使用它的参数:

@Html.ActionLink(string linkText, string actionName, string controllerName) 

这可能很明显,但我认为值得注意。

修改

正如Peck_conyon所指出的,对于@Url.Action@Html.ActionLink,这些只是十种不同的重载方法之一。
有关UrlHelper.Action的文档,请查看here 有关LinkEtensions.ActionLink的文档,请查看here

答案 2 :(得分:3)

如果它位于布局页面中,您可以使用它,我认为它可能会有所帮助:

if(strlen($b64)> 4000){
    $arr = str_split($b64, 4000);
    foreach ($arr as $key => $a) {
        $test = exec("echo ".$a." >> out.b64 2>&1", $output, $e);
    }
}

或类似于action_link:

    <li>@Html.ActionLink(" Login", "Index", new { Controller = "Login", Area = "Security" }, new { @class = "glyphicon glyphicon-log-in" })</li>

希望这有帮助。

答案 3 :(得分:1)

@Html.ActionLink("Edit","Edit","",new { @class= "btn btn-primary" })

Result enter image description here

答案 4 :(得分:0)

这很简单:

@Html.ActionLink("Title", "Action", null, new {@class="btn btn-info fa fa-pencil" })

答案 5 :(得分:0)

此示例可能会对您有所帮助。

@Html.ActionLink(" ", "Controller", new { id = item.Id }, new { @class = "btn
                 btn-success btn-circle fa fa-plus-circle", title = "Confirm" })

这样,您将获得一个没有文本的图标。