单击asp.net mvc5中的提交按钮时,无法从下拉列表中获取所选值

时间:2017-06-13 12:46:50

标签: asp.net-mvc

希望在单击“提交”按钮

后在Controller中获取下拉列表选定值

查看部分: -

@Html.DropDownListFor(m => m.ExportFormat, new List<SelectListItem>()
{
     new SelectListItem(){Value="PDF", Text = "PDF"},
     new SelectListItem(){Value=".CSV", Text = ".CSV"},
     new SelectListItem(){Value="Excel", Text = "Excel"}
}, "Select Format", new { @class = "form-control editable" })

<input type="submit" value="Export file" class="btn btn-primary" name="Command" />

控制器部分: -

[AllowAnonymous]
public ActionResult Reports(ReportsModel model,string Command)
{
    if(Command=="PDF")
    {

    }
    else if(Command==".CSV")
    {

    }
    else if(Command=="Excel")
    {

    }
}

2 个答案:

答案 0 :(得分:0)

这不是问一个好问题的方法!但是,您可以使用以下代码更新@Html.DropDownListFor();

@Html.DropDownListFor(m => m.ExportFormat, new List<SelectListItem>()
    {
     new SelectListItem(){Value="PDF", Text = "PDF"},
     new SelectListItem(){Value=".CSV", Text = ".CSV"},
     new SelectListItem(){Value="Excel", Text = "Excel"}
    },"Model.ExportFormat", "Select Format", new { @class = "form-control 
       editable", onchange = "this.form.submit()" })

如果你把控制器的动作放在改变时提交表格的地方会更好!

答案 1 :(得分:0)

您好如果您想获取下拉列表控件的值,在控制器操作方法中,您应该将下拉列表控件的名称作为操作方法中的参数。

示例:

[AllowAnonymous]
public ActionResult Reports(ReportsModel model,string ExportFormat)
{

}

希望在您的代码中,下拉列表控件的名称是exportformat,请在视图源中检查并将其作为参数提供,然后您一定要得到它。

由于

KARTHIK