在HTML Blade表中为了使一个单元格跨越多行,我使用了rowpan属性。但是,当我尝试在刀片视图中使用foreach进行操作时,它无法完美运行。 foreach循环将团队原始数据返回三遍。
这是我的刀片服务器代码
@foreach($datas as $data)
<tr>
<td rowspan="3">{{$data->team_name}}</td>
<td>{{$data->name}}</td>
<td>{{$data->email}}</td>
<td>{{$data->phone}}</td>
</tr>
@endforeach
请帮助。
答案 0 :(得分:2)
团队行返回3次,因为它位于foreach中,如果rowpan是静态值,则可以尝试以下代码:
@foreach($datas as $key => $data)
<tr>
@if ($key == 0 || $key % 3 == 0)
<td rowspan="3">{{$data->team_name}}</td>
@endif
<td>{{$data->name}}</td>
<td>{{$data->email}}</td>
<td>{{$data->phone}}</td>
</tr>
@endforeach
Laravel 5.2及更高版本
对于动态rowsapn,请尝试以下代码:
@php
$rowid = 0;
$rowspan = 0;
@endphp
@foreach($datas as $key => $data)
@php
$rowid += 1
@endphp
<tr>
@if ($key == 0 || $rowspan == $rowid)
@php
$rowid = 0;
$rowspan = $data->how_many_members;
@endphp
<td rowspan="{{ $rowspan }}">{{$data->team_name}}</td>
@endif
<td>{{$data->name}}</td>
<td>{{$data->email}}</td>
<td>{{$data->phone}}</td>
</tr>
@endforeach
更改how_many_members
属性适合您的模型字段名称。