Asp.net mvc 使用所选项目预填充列表框/多选列表

Asp.net mvc 使用所选项目预填充列表框/多选列表,asp.net-mvc,Asp.net Mvc,有没有办法用选定的项目预先填充多选列表 例如: 我有一个视图,其中包含以下ListBoxFor,这将导致页面通过允许过滤Model.companys来更新其显示内容 @Html.ListBoxFor(m => m.SelectedCompanies, new MultiSelectList(Model.Companies, "IdString", "CompanyName") 我希望在更新之后,MultiSelectList将包含在页面更新和刷新之前选择的项目。这是否意味着我需要返回

有没有办法用选定的项目预先填充
多选列表

例如: 我有一个视图,其中包含以下
ListBoxFor
,这将导致页面通过允许过滤
Model.companys
来更新其显示内容

  @Html.ListBoxFor(m => m.SelectedCompanies, new MultiSelectList(Model.Companies, "IdString", "CompanyName")
我希望在更新之后,
MultiSelectList
将包含在页面更新和刷新之前选择的项目。这是否意味着我需要返回所选公司的
selectedcompanys
,还是有其他方法


我在客户端使用列表框的可用性,但我不认为这会影响我的工作。

有时候,JS库可能会干扰您想要的结果。我不能为所选的JS库说话,但检查标记,看看它是如何呈现的。只要它在客户端上仍然有listbox(它必须在某个地方定义一些输入元素;我猜它会隐藏它并在选择值时更新它们),那么是的,它应该可以很好地集成


但是,当控制器发回时,您必须使用发回操作返回给控制器的任何值重新填充Model.SelectedCompanys属性。如果从POST操作返回视图,则属性仍应包含选定的公司。如果改用RedirectToAction,则必须将选择存储在TempData中

“在页面更新和刷新之前选择”是什么意思?您是AJAX刷新页面吗?不是,不是AJAX。将有一个
列表框和一个“更新结果”按钮,然后将有一个完整的页面刷新。然后,在新加载的页面上,我希望列表框中包含在重新加载之前选择的项目。然后,您需要将所选值传递到更新结果视图上的SelectedCompanys。