mvc中具有两列的Razor表
这是我的控制器:mvc中具有两列的Razor表,razor,model-view-controller,Razor,Model View Controller,这是我的控制器: public ActionResult Index(int PID = -1, int TID = -1, string DateT = "") { return View(barcodes); } 我认为: @model IEnumerable<barkod.Models.Barcode> @foreach (var item in Model) { <tr>
public ActionResult Index(int PID = -1, int TID = -1, string DateT = "")
{
return View(barcodes);
}
我认为:
@model IEnumerable<barkod.Models.Barcode>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.barC)
</td>
<td>
@Html.DisplayFor(modelItem => item.Date)
</td>
</tr>
}
@model IEnumerable
@foreach(模型中的var项目)
{
@DisplayFor(modeleItem=>item.barC)
@DisplayFor(modelItem=>item.Date)
}
可以,但我希望表信息分为两列。只需在foreach循环周围添加表标记即可。如果你想有4列,你必须添加一个计数器。使用for循环而不是foreach(取决于您的型号),或者添加您自己的行计数器
@model IEnumerable<barkod.Models.Barcode>
@{ int counter = 0; }
<table>
<tr>
@foreach (var item in Model)
{
<td>
@Html.DisplayFor(modelItem => item.barC)
</td>
<td>
@Html.DisplayFor(modelItem => item.Date)
</td>
@if (++counter % 2 == 0)
{
</tr><tr>
}
}
</tr>
</table>
@model IEnumerable
@{int counter=0;}
@foreach(模型中的var项目)
{
@DisplayFor(modeleItem=>item.barC)
@DisplayFor(modelItem=>item.Date)
@如果(++计数器%2==0)
{
}
}
像这样,在每第二个循环中添加一个新行。当项目数量不相等时,您必须添加一些额外的逻辑来处理这种情况 这是真的,但我的问题是not@mohammadmiraali你的问题是什么?表中有两列,是否需要4列?也许你可以使用CSS来创建一个4列布局,如何使用foreach将每个2项放在一个tr中?@Mohammadi我编辑了我的答案。以下可能是另一种解决方案: