是否可以在 Html.ActionLink 上同时添加 CSS 类和返回确认?

Posted

技术标签:

【中文标题】是否可以在 Html.ActionLink 上同时添加 CSS 类和返回确认?【英文标题】:Is it possible to add both a css class AND a return confirm on an Html.ActionLink? 【发布时间】:2021-10-03 13:31:23 【问题描述】:

我刚刚进入 MVC,所以我不确定这甚至可以使用 ActionLink 来完成。但是我想要做的是有一个 html.ActionLink ,你可以分配一个 CSS 类 AND 一个返回确认。

我已经得到了这个工作:

@Html.ActionLink("Delete", "Delete", "NWS", new  recordId = Model.Id , new  @class = "btn btn-danger configDelete" )

我已经让这个工作了:

@Html.ActionLink("Delete", "Delete", "NWS", new  recordId = Model.Id , new  onclick = "return confirm('Are you sure you want to delete this config?')" )

但是当我尝试像这样添加两者时,

@Html.ActionLink("Delete", "Delete", "NWS", new  recordId = Model.Id , new  @class = "btn btn-danger configDelete" , new  onclick = "return confirm('Are you sure you want to delete this config?')" )

我收到一个语法错误,内容为“没有给出与 'IHtmlHelper.ActionLink(string, string, string, string, string, string, object, object) 的所需形式参数 'routeValues' 相对应的参数”

我也尝试将返回确认放在 CSS 类之前,但这没关系。这可能与 ActionLink 相关吗?如果没有,有什么我可以可以做到这一点的吗?

【问题讨论】:

【参考方案1】:

与其将它们分离成自己的对象,不如将它们组合成一个对象:

new  @class = "btn btn-danger configDelete", onclick = "return confirm('Are you sure you want to delete this config?')" 

请注意,它们都只是生成的 HTML 元素的属性。您可以根据需要添加任意数量。它们只需要成为传递给 HTML 帮助器方法的同一个对象的一部分。

【讨论】:

以上是关于是否可以在 Html.ActionLink 上同时添加 CSS 类和返回确认?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Html.ActionLink 在不同的控制器上调用动作

Html.ActionLink 在 foreach 循环中不起作用

HTML.ActionLink 方法

Html.ActionLink 作为按钮或图像,而不是链接

如何在 @Html.ActionLink 中添加图像

在 Razor 的 Javascript 中嵌入 Html.ActionLink