MVC ListBox 只回发一个值
MVC ListBox Posting back only one value
我正在尝试 post 从 ListBoxFor 中选择值返回控制器,但总是只有一个选择值。
我的模特:
public IEnumerable<SelectListItem> RegionsList { get; set; }
public string[] Regions { get; set; }
我的看法:
@Html.ListBoxFor(m => m.Regions, Model.RegionsList)
我选择了两个项目,"Id" 3 和 5。Jquery $("#Regions").val() 给我:
$("#Regions").val();
["3", "5"]
但在 post 之后我的模型只有:
"3"
我试图将 string[] 更改为 IEnumerable 但没有结果。 post发送到控制器时,它始终只有一个值。你知道问题出在哪里吗?
如果我需要保留多个 selected 项目,我通常会实现 SelectList 模型。然后你可以像这样使用多 select 列表:
@Html.ListBoxFor(
x => x[i].SelectedItems,
new MultiSelectList(Model[i].Items, "Value", "Text", Model[i].SelectedItems)
)
可能我找到了解决方案。 devexpress模型绑定有问题:
https://www.devexpress.com/Support/Center/Question/Details/T124733
我正在尝试 post 从 ListBoxFor 中选择值返回控制器,但总是只有一个选择值。
我的模特:
public IEnumerable<SelectListItem> RegionsList { get; set; }
public string[] Regions { get; set; }
我的看法:
@Html.ListBoxFor(m => m.Regions, Model.RegionsList)
我选择了两个项目,"Id" 3 和 5。Jquery $("#Regions").val() 给我:
$("#Regions").val();
["3", "5"]
但在 post 之后我的模型只有:
"3"
我试图将 string[] 更改为 IEnumerable 但没有结果。 post发送到控制器时,它始终只有一个值。你知道问题出在哪里吗?
如果我需要保留多个 selected 项目,我通常会实现 SelectList 模型。然后你可以像这样使用多 select 列表:
@Html.ListBoxFor(
x => x[i].SelectedItems,
new MultiSelectList(Model[i].Items, "Value", "Text", Model[i].SelectedItems)
)
可能我找到了解决方案。 devexpress模型绑定有问题: https://www.devexpress.com/Support/Center/Question/Details/T124733