首页 > 解决方案 > 在 .NET Core 中为 asp-route 使用选定的选项值

问题描述

我想要两个选择表单,它们通过 GET 请求将它们选择的值传递给 URL。

我可以只使用 Tag Helpers 吗?还是我需要使用 JavaScript?

这是视图中的表单代码

<form asp-action="Index" asp-route-startyear="@selectedValue1" asp-route-endyear="@selectedValue2" method="get">

这是它正在调用的控制器

public IActionResult Index(int startYear = 1978, int endYear = 0)

最后这是来自 startup.cs 文件的路径

        routes.MapControllerRoute(
            name: "StandingsByYear",
            pattern: "{startyear:int}/{endyear:int}",
            defaults: new { controller = "Home", action = "Index" });

我可以onclick()在提交按钮中添加一个更改window.location.href使用 JavaScript 的按钮,但想知道 Tag Helper 中是否有可以实现相同功能的魔法。

谢谢!

标签: c#asp.net-coreasp.net-core-3.0tag-helpers

解决方案


Tag Helpers 使服务器端代码能够参与创建和呈现 HTML 元素。因此,如果您想绑定客户端 value(from select) ,标签助手将不起作用,您需要在 Javascript 中动态更改 url。


推荐阅读