将选择列表中的所有项目获取到控制器

时间:2019-12-26 20:51:48

标签: javascript c# asp.net-mvc vue.js

我有两个多重选择列表,一个包含完整的名称列表,第二个包含从第一个列表中选择的名称。名称存储在Vue数组中,该数组将名称填充到第二个选择列表中,但是当我提交所有这些形式的表单时,第二个多重选择中的值结果将为null。

<select multiple style="width: 300px; height: 200px;">
      <option v-for="item in Selected" name="Signatures" selected>{{ item }</option>
</select>

var signatures = new Vue({
        el: '#signatures',
        data: {
            Selected: []
        }
    })

下面是我的控制器,该部分不需要模型,因为数据只是去服务器端存储到下一页的变量中。

public ActionResult LoadTextFile(MainVM vM)
        {
            string size = Request.Form["Size"];
            string document = Request.Form["Document"];
            string tribute = Request.Form["Tribute"];
            string date = Request.Form["date"];
            string signatures = Request.Form["Signatures"];
            return View();
        }

我正在尝试使用Request.form("Signatures");

获取选择列表的值

我希望有一种方法可以使用JavaScript框架或C#提交选择列表中的所有值。

1 个答案:

答案 0 :(得分:0)

阅读此post之后,我意识到我需要做的就是在名称中添加方括号。

最终结果是:

<select multiple style="width: 300px; height: 200px;" name="Signatures[]">
                        <option v-for="item in Selected" selected>{{ item }}</option>
                    </select>
string signatures = Request.Form["Signatures[]"];