如何将 asp.net mvc 5 中带有路由值的 ActionLink 参数发送到带有 jquery 的控制器

How To Send ActionLink Parameters With routevalue in asp.net mvc 5 to controller with jquery

@Html.ActionLink("mor info","CityInfo",new{cityid = --getvalue()--},new {@class = "mbtn" })

我想使用 Jquery 获取在下拉列表 CityId 中选择的值 但是我不能在 RouteValue

中使用 JQuery 函数

如何在Routevalue中使用JQuery函数? 或者 如何在Controller中获取选中的CityId并发送到Action?

例如,您可以使用 jQuery 下拉值更改事件和设置元素 href 属性的函数来实现此目的。

如果需要,请将 <select /> 更改为 @Html.DropDownListFor()@Html.DropDownList()

<script type="text/javascript">
    $(document).ready(function () {
        $('.myClass').change(function () {
            $('.mbtn').attr('href', '/MyController/CityInfo?cityid=' + $(this).val());
        });
    })
</script>

<select class="myClass">
    <option value="1">Texas</option>
    <option value="2">Sao Paulo</option>
    <option value="3">Mexico</option>
</select>

@Html.ActionLink("More Info", "CityInfo", null, new { @class = "mbtn" })

更多参数您可以为每个下拉菜单设置 class='myClass' 和不同的 ID。有了它,您应该可以将其用作:

<script type="text/javascript">
    $(document).ready(function () {
        $('.myClass').change(function() {
            $('.mbtn').attr('href', '/MyController/CityInfo?cityid=' + $('#cityId').val() + '&userId=' + $('#userId').val());
        });
    })
</script>