【问题标题】:How to manipulate Html.ActionLink to show a link to another controller?如何操作 Html.ActionLink 以显示到另一个控制器的链接?
【发布时间】:2011-01-22 03:56:44
【问题描述】:

在 HomeController 的 Details 视图中,我想创建一个指向 MiscController 上的 Email 视图的链接。另外,我需要在 QueryString 中添加一个项目。

我想创建一个类似于以下内容的链接:

<a href="http://www.blah.com/misc/SendMail?id=6">
    <font size="1">Report problems</font>
</a>

我尝试了以下方法:

<% Html.ActionLink("<font size=\"1\">Report</font>", "SendMail", "Misc", Model.ImageID, new object()); %>

它没有返回任何链接。我错过了什么?

【问题讨论】:

    标签: c# asp.net-mvc .net-3.5 actionlink


    【解决方案1】:

    首先,您错过了&lt;% 之后的=。这就是它没有输出任何东西的原因。

    另外,你传递routeValues参数的方式是错误的。

    应该是:

    <%=Html.ActionLink("<font size=\"1\">Report</font>", "SendMail", "Misc", 
        new { id = Model.ImageID }, null /*htmlAttributes*/) %>
    

    请记住,尽管text 参数将在输出中进行编码,因此发送带有该参数的 HTML 是没有意义的。
    最好使用 CSS 来设置 HTML 样式。

    例如:

    a.myLink {font-size: 0.5em;color:yellow;}
    

    并为锚元素设置类属性:

    <%=Html.ActionLink("Report", "SendMail", "Misc", 
        new { id = Model.ImageID }, new { @class = "myLink" }) %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-04-18
      • 1970-01-01
      • 1970-01-01
      • 2015-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多