为了账号安全,请及时绑定邮箱和手机立即绑定

如何将参数传递给控制器​​函数

如何将参数传递给控制器​​函数

C#
繁花如伊 2023-09-16 17:59:17
所以我有一个这样的表格:@using (Html.BeginUmbracoForm<DataController>("SetYear", null, new { @id = "yearDropdown" })){    <div class="form-group">        <select id="Year" name="Year" class="form-control">            @if (objModel.Annums != null)            {                foreach (Int32 intYear in objModel.Annums.OrderByDescending(x => x).ToList())                {                    <option                         @if (intYear == DateTime.Now.Year)                         {                             <text>selected</text>                         }                         value="@intYear">                        @intYear                    </option>                }            }        </div>    </div>}其中一部分jQuery会在更改时提交表单(我意识到这可以内联完成):if ($("#yearDropdown").length) {    $("#Year").on('change', function () {        $("#yearDropdown").submit();    });}我想要做的是将 传递Year给控制器中的函数,如下所示:public void SetYear (Int32 intYear){    System.Web.HttpContext.Current.Session["Year"] = intYear;}这可以仅使用 C# 来完成吗?还是我必须将 a 附加querystring到表单 URL 上?
查看完整描述

1 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

控制器中的方法应该是一个 Action 并且它应该返回一个 ActionResult:


[HttpPost]

public ActionResult SetYear (Int32 intYear)

{

    System.Web.HttpContext.Current.Session["Year"] = intYear;

    return View();

}

此外,Select元素名称必须与 Action 方法的参数名称 ( intYear) 匹配:


@using (Html.BeginUmbracoForm<DataController>("SetYear", null, new { @id = "yearDropdown" }))

{

    <div class="form-group">

        <select id="Year" name="intYear" class="form-control">


            @if (objModel.Annums != null)

            {

                foreach (Int32 intYear in objModel.Annums.OrderByDescending(x => x).ToList())

                {

                    <option 

                        @if (intYear == DateTime.Now.Year) 

                        { 

                            <text>selected</text> 

                        } 

                        value="@intYear">

                        @intYear

                    </option>

                }

            }


        </div>

    </div>

}


查看完整回答
反对 回复 2023-09-16
  • 1 回答
  • 0 关注
  • 83 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信