使用这段代码,我生成了 5 个按钮,然后我需-6ren">
gpt4 book ai didi

asp.net-mvc - MVC 在单击按钮时获取 id

转载 作者:行者123 更新时间:2023-12-02 22:00:52 24 4
gpt4 key购买 nike

我正在尝试获取所选按钮的 ID。

下面是我的代码

 <% foreach (var item in Model.getLeagues) { %>
<a href=Teams.aspx class="leagueImage">
<img src="../../<%: item.image %>" alt="<%: item.name %>" />
</a>
<% } %>

使用这段代码,我生成了 5 个按钮,然后我需要单击按钮的 ID。

关于如何获得此 ID 的任何帮助?

谢谢

最佳答案

如果您想从 Controller 获取 ID,为什么不采纳 Marko 提出的建议,而不是将其放入 id 属性,而是将其作为 href 标签的一部分并传递 ID 属性。

默认情况下,MVC 中的路由需要返回一个 ID,该 ID 是您路由的一部分:

http://sitename/{Controller}/{Action}/{Id}

所以,您可以这样做(我将使用 Razor 语法,但是,您可以进行调整):

@for(var i = 0; i < Model.getLeagues.Count; i++) {
Html.ActionLink("Button Name", "Index", "MyController", new { id = Model.getLeages[i] }, new { @class="classname", alt = "@Model.getLeagues[i].name" }) %>
}

并且,在您的 Controller 中(根据需要重命名)您将拥有:

public class MyController : Controller {
public ActionResult Index(int id) {
// Do stuff with the ID that you get back here.
}
}

此外,您会注意到我公开了您的图像信息。相反,在您的样式表中创建一个类:

a.classname
{
background: url(../Images/image.gif) no-repeat top left;
/* Do whatever else you need to do here to style your buttons. */
}

我没有检查任何代码,所以不能保证它在语法上是完美的,但这应该能让你走上正确的道路。

我确实注意到您指向 Teams.aspx 的路径。如果您来自 WebForms,则可以像这样编辑路由文件以指向 RESTful 路由:

routes.MapPageRoute("Teams", "MyController/Index", "~/WebForms/Index/Teams.aspx");

(记入:https://stackoverflow.com/a/10175580/132528)

关于asp.net-mvc - MVC 在单击按钮时获取 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16967999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com