首页 > 解决方案 > 在表格行内检查条件时更改背景颜色不起作用

问题描述

在这里,我有一个“工作”数组(从 excel 文件生成),其中包含值employee_id(此处为 id)、项目和小时数。我还有另一个数组“员工”,其中包含我的数据库中的所有员工。在这里,我需要通过与 id 进行比较来检查该员工是否存在于我的数据库中。如果员工存在,我需要更改表格行的背景颜色。我尝试过这种方法但不起作用,请帮助。

@foreach($val['work'] as $k3=> $val3)
    @if(isset($val3['hours']) && isset($val3['projects']))                                
        <tr @foreach($employees as $employee) @if($employee->emp_id ==$val3['id'][1]) style="background-color:#ffe1df;" @endif @endforeach>
            <td>{{$val3['id'][1]}}</td>
            <td>{{$val3['name'][2]}}</td>
        </tr>
    @endif
@endforeach 

标签: phphtmlcssarrayslaravel

解决方案


尝试设置标志值:

@foreach($val['work'] as $k3=> $val3)
    @if(isset($val3['hours']) && isset($val3['projects']))
        @php $flag=0; @endphp
        @foreach($employees as $employee) @if($employee->emp_id == $val3['id'][1])  @php $flag=1 @endphp @endif @endforeach
        <tr @if($flag==0) style="background-color:#ffe1df;" @endif>
            <td>{{$val3['id'][1]}}</td>
            <td>{{$val3['name'][2]}}</td>
        </tr>
    @endif 
@endforeach

推荐阅读