2

我正在尝试用包含图标的类替换此处的链接文本:

 @Html.ActionLink("Edit", 
                  "EditSatelliteMeeting", 
                  "ByLaws", 
                   new { id = meeting.BLClubSatelliteMeetingId, 
                         ByLawsId = Model.ByLawsId }, 
                   new { @class = "js-openDialog", 
                         data_dialog_id = "AddSatelliteMeetingDialog",
                         data_dialog_title = "Edit  Satellite Meeting" })

我知道要做到这一点,一个常见的解决方案是使用@Url.Action.

但是当我尝试这样做时,我得到一个解析器错误。

这打破了

<a href="@Url.Action("EditSatelliteMeeting", "ByLaws", 
                     new { id = meeting.BLClubSatelliteMeetingId, 
                           ByLawsId = Model.ByLawsId }, 
                     new { @class = "js-openDialog icon edit", 
                          data_dialog_id = "AddSatelliteMeetingDialog",
                          data_dialog_title = "Edit  Satellite Meeting" })"></a>

这也是

 <a href="@Url.Action("EditSatelliteMeeting", "ByLaws", 
                       new { id = meeting.BLClubSatelliteMeetingId, 
                             ByLawsId = Model.ByLawsId, 
                             @class = "js-openDialog icon edit", 
                             data_dialog_id = "AddSatelliteMeetingDialog",
                             data_dialog_title = "Edit  Satellite Meeting" })"></a>
4

2 回答 2

3

如果您使用a+Url.Action而不是Html.ActionLink,那么您可以将 HTML 属性直接放入 a-tag 中。

<a class = "js-openDialog icon edit"
   data_dialog_id = "AddSatelliteMeetingDialog"
   data_dialog_title = "Edit  Satellite Meeting"
   href='@Url.Action("EditSatelliteMeeting", "ByLaws", 
             new { id = meeting.BLClubSatelliteMeetingId, 
                   ByLawsId = Model.ByLawsId })'>
    <!-- icon here -->
</a>

没有Url.Action包含 HTML 属性的重载,这是有道理的,因为您不能将 HTML 属性放入 URL 字符串中。

于 2013-08-23T19:10:39.637 回答
0

我最近通过尝试得到了一个不错的结果 - 在本地主机上工作!:

 <a href="../Controller(Home)/View(Index)"><span class="glyphicon glyphicon-home"></span></a>
于 2015-03-26T16:24:57.273 回答