我正在尝试根据我的laravel IF条件删除一行。因此,如果我的字段不为空,那么我希望它删除该行。但是,在脚本运行时,它会不断删除页面中的所有行,而不仅仅是不为空的行。有人可以从我的代码中找出我的问题所在吗?我还没有对问题进行全面的了解,因为我认为这仅仅是我的forloop或代码放置问题?但是,我将其放在foreach循环中的原因是为了可以访问“ t-> section”属性。
我尝试添加一个data属性,以便它仅针对特定列而不是所有列。我也希望这种情况在用户访问页面后立即发生,因此不需要按钮或“ on”点击。
@foreach($displayTickets as $t)
<tr class="hide" data-id="{{$t->id}}">
<td><i class="fa fa-ticket" style="font-size: 16px" aria-hidden="true"></i><a
href="/ticket/{{ $t->slug }}"
class="subject-link">{{ $t->title }}</a></td>
<td>{{ $t->author }} {{$t->id}}</td>
<td>{{ $t->subject_area }}</td>
<td>{{ $t->created_at }}</td>
<td>{{ $t->reply_count }}</td>
<td>
@if($t->status == 'Open')
<span class="status-green">{{ $t->status }}</span>
@elseif($t->status == 'Closed')
<span class="status-red">{{ $t->status }}</span>
@endif
</td>
<script type="text/javascript">
@if(!empty($t->section))
jQuery(document).ready(function () {
$('.hide').filter(function(){
return $(this).data('id')
}).remove();
});
@endif
</script>
@endforeach
</tr>
</tbody>
</table>
答案 0 :(得分:1)
如果您不需要这些行,并且在页面的其余部分未使用它们,则可以使用where子句在控制器中提前一步过滤票证:
df.iloc[(-df.groupby(level=[0,1]).D.transform('max')).argsort().values]
Out[416]:
D
Gran1 Par2 Child1 9
Child2 2
Gran2 Par3 Child1 6
Child2 8
Gran1 Par1 Child1 3
Child2 7
Child3 2
Par3 Child1 6
Gran2 Par2 Child1 6
Child2 2
Child3 3
Par1 Child1 3
如果您需要它们,只需要将它们隐藏在数据表中:
$displayTickets = Ticket::latest()->where('section',null)->get()