MVC ListBox只返回一个值

时间:2015-01-17 14:34:16

标签: c# asp.net-mvc devexpress

我试图将ListBoxFor中的选定值发布回控制器,但总是只有一个选定的值。

我的模特:

public IEnumerable<SelectListItem> RegionsList { get; set; }
public string[] Regions { get; set; }

我的观点:

@Html.ListBoxFor(m => m.Regions, Model.RegionsList)

我选择两个项目,&#34; Id&#34; 3和5. Jquery $(&#34;#Regions&#34;)。val()给我:

$("#Regions").val();
["3", "5"]

但发布后我的模特只有:

"3" 

我试图将string []更改为IEnumerable但没有结果。发布到控制器时,它始终只有一个值。你知道这是什么问题吗?

2 个答案:

答案 0 :(得分:0)

如果我需要保留多个选定的项目,我通常会实现一个SelectList模型。然后你可以使用这样的多选列表:

@Html.ListBoxFor(
    x => x[i].SelectedItems, 
    new MultiSelectList(Model[i].Items, "Value", "Text", Model[i].SelectedItems)
)

答案 1 :(得分:0)

我找到了解决方案。 devexpress模型绑定存在问题: https://www.devexpress.com/Support/Center/Question/Details/T124733