C# 如何将多个选项的值从选择列表发布到MVC控制器?

C# 如何将多个选项的值从选择列表发布到MVC控制器?,c#,asp.net-mvc,asp.net-core,multi-select,C#,Asp.net Mvc,Asp.net Core,Multi Select,我有一个如下所示的选择列表,我需要将每个选项的值从选择列表发布到控制器。是否有可能以某种方式获得这些值 选择列表 我可以在控制器中执行类似的操作吗 public IActionResult Submit(List<string> SelectedSortOrderOptions) { ... } 我需要获得一个新的字符串列表,其中包含值Parcel Number、Receipt Number和Communications 我可以在控制器中执行类似的操作吗 public IAc

我有一个如下所示的选择列表,我需要将每个选项的值从选择列表发布到控制器。是否有可能以某种方式获得这些值

选择列表

我可以在控制器中执行类似的操作吗

public IActionResult Submit(List<string> SelectedSortOrderOptions)
{
   ...
}
我需要获得一个新的字符串列表,其中包含值Parcel Number、Receipt Number和Communications

我可以在控制器中执行类似的操作吗

public IActionResult Submit(List<string> SelectedSortOrderOptions)
{
   ...
}
是的,你可以这样做。如果要定义具有多个选项的选择列表,则需要在视图中向标记添加多个属性:

在控制器中:

[HttpPost]
public IActionResult Submit(List<string> SelectedSortOrderOptions)
{
    return View();
}
在选择多个选项时,您可以按住Windows上的Ctrl键或Mac上的command键

您可以使用jquery获取所有选项,并通过ajax将它们传递给controller:


我不需要用户从列表中选择项目,我只需要获取整个列表并将其发送给控制器。该列表由jquery from选项填充,这些选项被移动到此列表,并从另一个选项中进行选择。@sjohn285您可以使用相同的方法进行此操作。但在提交之前,需要将选定属性添加到所有项目:地块Number@sjohn285这可以通过jquery完成:$SelectedSortOrderOptions.prop'selected',true
[HttpPost]
public IActionResult Submit(List<string> SelectedSortOrderOptions)
{
    return View();
}
<script>
        $('#SelectedSortOrderOptions').change(function (e) {
            var optionsVal =[];
            $("#SelectedSortOrderOptions option").each(function () {
                optionsVal.push($(this).val());
            });
            $.ajax({
                type: 'POST',
                url: '/Home/submit',
                traditional: true,
                dataType: "json",
                data: { SelectedSortOrderOptions: optionsVal },
                success: function () {

                },
            });
        });
    </script>