如何在 MVC 中动态更改 Html.ActionLink 的类
我正在寻找一种方法来根据特定标准更改控制器中 ActionLink 的类(在模型中找不到,因此我无法在视图本身中编写条件)。 但我似乎找不到允许我使用此元素的 ViewData("name") (我认为这是可能的,但我错过了一些东西)。
在我看来,我有一个像这样的 html 助手,
<%=Html.ActionLink("View", "Index", "Home")%>
但在我的控制器中,我不确定如何引用它,如下所示添加类或 onclick 等属性。
ViewData("View").attributes.add("class", "active")
I'm looking for a way to alter the class of an ActionLink in the controller based on specific criteria (not found in the model so I can't write a conditional in the view itself). But i can't seem to find the ViewData("name") that allows me to work w/ this element (I assume this is possible, but I'm missing something).
I have an html helper like so in my view
<%=Html.ActionLink("View", "Index", "Home")%>
But in my controller I'm not sure how to reference this, like the below to add an attribute like class or onclick.
ViewData("View").attributes.add("class", "active")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您不需要从控制器设置 CSS 属性,因为这是视图的问题。 您可以向 ActionLink 添加 HTML 属性,如下所示:
或者,您可以“手动”构建锚点:
或者,如果您需要有条件地设置活动类:
You don't set CSS attributes from the controller since that's a concern of the view. You can add HTML attributes to the ActionLink like this:
Alternately you can build your anchors "manually":
Or if you need to conditionally set the active class:
在 Razor 视图中,您可以执行类似的操作这:
In a Razor view you can do something like this: