将下拉文本传递给控制器

时间:2015-02-05 13:26:56

标签: model-view-controller

我有下面的下拉列表,如何在单击提交按钮(httppost)时检索MVC控制器上的下拉列表选择下拉文本(非值)?

<select id="detailThing" name="MyList">
<option value="BMI">ListDetail1</option>
<option value="BMI">ListDetail2</option>
<option value="BMI">ListDetail3</option>
</select>

1 个答案:

答案 0 :(得分:0)

<select>放入表单并将其提交给控制器。您将需要一个带有字符串变量的模型来将值传递给/ through。

public class MyModel
{
    public String myValue { get; set; }
}
视图中的

将此行放在顶部;

@model MyProject.Models.MyModel

然后创建一个html表单并将你的select放入其中并创建一个提交按钮;

@using (Html.BeginForm("MyControllerMethod", "MyController", FormMethod.Post, new { id = "myform" }))
{
    <select id="detailThing" name="myValue">
        <option value="BMI">Putrajaya</option>
        <option value="BMI">Sepang</option>
        <option value="BMI">Hulu Langat</option>
    </select>
    <button type="submit">Submit</button>
}

设置&#39;名称&#39;选择'myValue'将链接其选定的&#39;值为模型上的变量,并在提交表单时将其传递给控制器​​。希望这有帮助!

更新

将值更改为与显示文本

相同
<select id="detailThing" name="myValue">
     <option value="Putrajaya">Putrajaya</option>
     <option value="Sepang">Sepang</option>
     <option value="Hulu Langat">Hulu Langat</option>
</select>