我有一张桌子,我希望每列中的最高编号为黄色背景。实现这一目标的最佳方法是什么?
在这里你可以看到我的表格代码:
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.Naam)
</th>
<th>
@Html.DisplayNameFor(model => model.Bier)
</th>
<th>
@Html.DisplayNameFor(model => model.Frisdrank)
</th>
<th>
@Html.DisplayNameFor(model => model.Chips)
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.ActionLink(item.Naam, "Details", new { id = item.Id })
</td>
<td>
@Html.DisplayFor(modelItem => item.Bier)
@{AantalBier += item.Bier;}
</td>
<td>
@Html.DisplayFor(modelItem => item.Frisdrank)
@{AantalFrisdrank += item.Frisdrank;}
</td>
<td>
@Html.DisplayFor(modelItem => item.Chips)
@{AantalChips += item.Chips;}
</td>
</tr>
}
<tr style="background-color:#d9e6c4">
<th>
Totaal
</th>
<th>
@AantalBier
</th>
<th>
@AantalFrisdrank
</th>
<th>
@AantalChips
</th>
</tr>
</table>
答案 0 :(得分:2)
我会使用OrderBy
linq扩展方法对模型进行排序,然后最高值将出现在表格的顶部,并且我突出显示第一行。
但是,如果您不想出于某种原因对模型进行排序,可以通过调用Max
方法检查该值是否为最大值。
例如:
foreach (var i in Model){
if (i.Number == Model.Max(x=> x.Number))
<td style="background:yellow">Something</td>
else
<td>Something</td>
}