显示多列复选框列表
我目前正在显示我的复选框列表,如下所示:
foreach (var employee in Model.Employees) { @Html.CheckBox(employee.Name);
}
如果你想要一个长列的复选框,这很好,但是我的列表变长,所以我想在2或3列中显示它。
是否有捷径可寻? 我知道我可以创建一个表,然后为一个列的Employees的前半部分放入一个for
循环,然后在另一个列中为另一半的Employees循环另一个for
循环。 但这似乎是如此原始,必须有一种更简单,更清洁的方式。
我会使用包含您的复选框的2或3个html列表,每个列表紧跟在标记中的下一个列表之后出现,并使用css将每个列表浮动到左侧。
如果复选框超过10个,此示例将复选框分为2个列表:
CSS:
.multi-list { float: left; padding-right: 50px; } .clear { clear: both; }
带Razor的HTML标记:
@{ if (Model != null) { int itemCount = 0; @foreach (var item in Model) { itemCount++; - @Html.DisplayFor(modelItem => item.Name) @Html.CheckBoxFor(modelItem => item.Active)
if (Model.Count() > 10 && itemCount == (int)(Model.Count() / 2)) { @Html.Raw("
"); } }
} }
- ICSharpCode.SharpZipLibvalidationzip文件
- 如何在ClientValidationFunction上获取’controlToValidate’属性?
- Silverlight 4:将文件上传到服务器
- 将文件从ASP.NET Core web api发布到另一个ASP.NET Core web api
- .NET迁移:在运行时设置和迁移多个数据库
- 如何检索与LinkButton在同一行中的ListView项的值
- 使用c#的amazon marketplace web service(amazon mws)
- 为什么我的WebClient上传文件代码挂起?
- 无法映射路径’/’。 .net 4.0