我有一个网站,有一行"雇员",其中有八个下拉菜单。我已经绑定了一个ViewBag与所有雇员和相同的列表属性。问题是,它会产生一个"多个" HTML输出,在那里我可以选择多个雇员和整个下拉菜单显示为一个列表。
基本上:
<div class="row">
<div class="col-sm">
<select asp-for="Employees" asp-items="ViewBag.Employees" class="form-control" > </select>
</div>
<div class="col-sm">
<select asp-for="Employees" asp-items="ViewBag.Employees" class="form-control"> </select>
.......
在模型中:
public ICollection<int?>? Employees { get; set; }
当我运行此页面时:1.)下拉列表为多选; 2.)下拉列表为列表形式,不点击,直接显示所有员工。
如果不声明八个"Employee 1 - 8"属性,我能以某种方式防止这种情况吗?
1条答案
按热度按时间kd3sttzy1#
因为你的类型是
ICollection<int?>?
,所以asp-for
会生成multiple="multiple"
属性,在这种情况下你只需要使用name="Employees"
而不是asp-for="Employees"
。代码:
查看: