我有下表: -
<table class="table table-striped">
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
@foreach(var permisionMag in Model.PermisionManagement)
{
<tr>
<td>@permisionMag.Name</td>
@{
int i = 0;
<td class="f">
@foreach(var item in permisionMag.TechnologyTypes.OrderBy(a => a.Name)) {
@(i+1) @item.Name
i = i + 1;
}
<br />
</td>
}
</tr>
}
</tbody>
</table>
但是目前我需要第二列有嵌套行而不是在同一个TD内显示行?有什么建议吗?
答案 0 :(得分:1)
您不能直接生成表格单元格,您必须在第二个表格单元格内生成一个新表格。
您还可以将@item.Name
渲染为span / div和样式,以创建嵌套表(jsFiddle example)的错觉。
答案 1 :(得分:1)
您可以在第一列使用rowspan:
<table class="table table-striped">
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>@foreach(var permisionMag in Model.PermisionManagement) {
<tr>
<td rowspan="@permisionMag.TechnologyTypes.Count()">@permisionMag.Name</td>
@{
int i = 0;
foreach (var item in permisionMag.TechnologyTypes.OrderBy(a => a.Name))
{
i = i + 1;
if( i > 1) {
</tr><tr>
}
<td class="f">
@(i+1) @item.Name
</td>
}
}
</tr>
}
</tbody>
</table>
我希望它有所帮助。
答案 2 :(得分:-1)
如果我理解你的问题,那么你可能想要这样做:
@foreach(var permisionMag in Model.PermisionManagement) {
<tr>
<td rowspan="@permisionMag.TechnologyTypes.Count()">@permisionMag.Name</td>
@{int i = 0;
@foreach (var item in permisionMag.TechnologyTypes.OrderBy(a => a.Name)) {
<td class="f">
@(i+1) @item.Name
i = i + 1;
</td>
</tr>
<tr>
}
</tr>
}
}
但它本质上应该建立这样的东西:
----------------
| Name | Item1 |
| | ----- |
| | Item2 |
| | ----- |
| | Item3 |
| | ----- |
| | Item4 |
----------------