如何在MVC5中获取select元素的值?

时间:2014-11-26 20:35:08

标签: asp.net-mvc

我有一个包含一些输入元素和一些选择元素的表单。关键是对于输入元素,我为它们提供了一个name属性,然后在我的控制器中使用它来获取它们的值。但我不知道如何获得select元素的值,并将其提供给控制器。这只是我表格中的一小段:

            <div class="form-group">
                <label for="state">Price range</label>
                <select name="price" class="form-control">
                    <option>$ 175,000 - $ 200,000</option>
                    <option>$ 200,000 - $ 250,000</option>
                    <option>$ 250,000 - $ 300,000</option>
                    <option>$ 300,000 - $ 350,000</option>
                    <option>$ 350,000 - $ 400,000</option>
                </select>
            </div>
            <div class="form-group">
                <label for="hear">What interests you?</label>
                <input type="text" name="interests" class="form-control" id="inputHear" placeholder="What interests you? ">
            </div>

然后,在我的控制器中我有这样的事情:

    [HttpPost]
    public ActionResult Contact(..., string interests = "")
    {
         ...
    }

有人可以告诉我如何从select元素中获取所选值?

1 个答案:

答案 0 :(得分:1)

您实际可以看到的文本是针对用户的,您实际发送的值应该是每个选项标记上value属性的内容:

    <div class="form-group">
            <label for="state">Price range</label>
            <select name="price" class="form-control">
                <option value="175,000 - 200,000">$ 175,000 - $ 200,000</option>
                <option value="200,000 - 250,000">$ 200,000 - $ 250,000</option>
                <option value="250,000 - 300,000">$ 250,000 - $ 300,000</option>
                <option value="300,000 - 350,000">$ 300,000 - $ 350,000</option>
                <option value="350,000 - 400,000">$ 350,000 - $ 400,000</option>
            </select>
        </div>
        <div class="form-group">
            <label for="hear">What interests you?</label>
            <input type="text" name="interests" class="form-control" id="inputHear" placeholder="What interests you? ">
        </div>    

然后在你的控制器中:

[HttpPost]
public ActionResult Contact(string price, string interests = "")
{
     ...
}