我使用下面的代码让用户在表单上选择多个位置。
@Html.DropDownListFor(m => m.location_code, Model.location_type, new { @class = "form-control", @multiple = "multiple" }).
字符串
location_code是List<int>
,location_type是List<SelectListItem>
,填充有数据。
该代码确实返回了控制器中的选定值,但当用户单击编辑按钮时,传递的对象不会显示选定值,而是显示未选定的正常初始化对象。
我实际上想要的是,一旦用户提交的形式(包括多个选定的值)它去一个页面,用户确认,如果细节是正确的。如果不是,他按下编辑按钮,对象再次传递到控制器。在这个阶段,它应该显示多个选定的值。其他字段行为正常。
对此有何见解?
3条答案
按热度按时间nnvyjq4y1#
在你看来:
字符串
这就是你所需要的。你正在使用一个ListBox控件,所以它已经是一个多选择列表。
然后回到你的控制器中,你可以像这样获得所选的项目:
型
idv4meu82#
我假设你已经知道一般的MVC的东西,所以记住:
首先获取这个库并设置它:https://select2.org/getting-started/basic-usage
在你看来,你可以用这个
字符串
然后,您可以为上面的控件中使用的model.DistrictId添加属性viewmodel,作为字符串的List,如下所示
型
当您将ViewModel提交回控制器时,您将拥有多个选定Id作为字符串列表。
vom3gejh3#
在ASP.Net MVC和C#.Net中使用jQuery的多选下拉列表:
首先我们将创建一个新的mvc应用程序,并在model文件夹中添加一个model类文件。在这个model类文件中添加下面的代码。
字符串
现在添加一个控制器类文件并添加下面的代码。
型
在上面的代码中,我已经创建了一个国家的集合。这个列表我们将与列表绑定。现在创建视图,并将下面的代码添加到视图中。
型
在这段代码中,我添加了css和jQuery库引用,并使用sumoselect函数来显示多选列表。
现在我们已经运行了应用程序来检查输出。
的数据