我有一个标签控件,上面有一堆复选框(可能比我在这里显示的更多)。我在这样的循环中创建复选框:
<div id="mechanical" class="tabcontent">
<% for (int i = 0; i < Model.MechanicalRisks.Count; i++)
{%>
<%= Html.CheckBoxFor(x => x.MechanicalRisks[i].IsChecked)%>
<%= Html.DisplayFor(x => x.MechanicalRisks[i].Text)%>
<br />
<%} %>
<br />
Other:
<br />
<%= Html.TextAreaFor(x => x.OtherMechanical, new { style = "width:100%;" })%>
</div>
看起来像这样:
我不喜欢左侧的复选框如何继续。我希望它们在多个列中,所以如果说有二十个盒子,它就不会是愚蠢的高。如果我要为标签内的列创建多个div,我该如何将div中的复选框分开?
答案 0 :(得分:2)
这是一个样式问题,而不是C#/ ASP.NET MVC 2问题
<ul>
<% for (int i = 0; i < Model.MechanicalRisks.Count; i++) {%>
<li>
<%=Html.CheckBoxFor(x => x.MechanicalRisks[i].IsChecked)%>
<%=Html.DisplayFor(x => x.MechanicalRisks[i].Text)%>
</li>
<%} %>
</ul>
<br />
Other:<br />
<%= Html.TextAreaFor(x => x.OtherMechanical, new { style = "width:100%;" })%>
然后创建一些新样式或构建#mechanical
#mechanical li
{
float: left;
width: 50%;
padding: 0;
margin: 0;
list-style: none;
}
答案 1 :(得分:0)
添加两个div用于显示列,每个div中都有一个for循环。第一个循环将显示记录的前半部分,第二个循环将显示记录的后半部分。