【发布时间】:2021-09-17 04:02:28
【问题描述】:
这是我的表格的刀片模板,我在根据值更改行时遇到问题。如果命令编号发生变化,我希望该行和具有该命令编号的所有后续行都发生变化,然后在每次不同时在白色/灰色之间交替。
我知道它看起来很基本,但我无法在我的算法中创建条件。我的第一个 if 查看上一次迭代是否具有不同的命令号并更改类,但我错过了检查上一次迭代是否具有相同的命令号的那个,因此保持相同的背景。我不知道如何检查 css 类并交替使用 2 个背景白色/灰色。我尝试使用 Laravel 的 $attributes ,但它始终未定义。 我希望我对我的问题很清楚,而且表格已经通过增加 command_number 进行排序。
如果你需要控制器,我可以提供。
谢谢
tr.second th, tr.second td {
background-color: #D1D1D1;
}
//////
<tbody>
@foreach($data as $key => $line)
@if($key > 0)
<tr @if ($data[$key]['command_number'] != $data[$key-1]['command_number']) class="second"
@elseif()
@endif>
@foreach($line as $item)
@if(($item == $line['quantity']) || ($item == $line['delivery']))
<td>
<strong>{{$item}}</strong>
</td>
@elseif($item == $line['hours'])
<td>
<strong style="color: red;">{{$item}}</strong>
</td>
@else
<td>
{{$item}}
</td>
@endif
@endforeach
</tr>
@endif
@endforeach
</tbody>
【问题讨论】:
-
您应该将类名存储到一个变量中,然后每当命令编号在一条记录和另一条记录之间发生变化时“切换”该变量。然后您只需将该变量的值作为类属性的内容输出(无需在该位置应用任何进一步的条件。)
-
key 是命令的唯一键吗?
-
我不确定我理解你的意思,key代表当前的迭代。