我的代码是这样的:
<div class="row no-gutter">
<div class="col-md-3">
<h2 class="nav-cat-text">By Players</h2>
</div>
<div class="col-md-9 col-xs-12">
<div class="wrap-tabs">
<ul class="nav nav-tabs nav-cat">
@foreach($categories as $category)
@if($category->parent_id == 1)
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}"><a href="javascript:;" data-toggle="tab">{{ ucfirst($category->name) }}</a></li>
@endif
@endforeach
</ul>
</div>
</div>
</div>
<br>
<!-- By Types -->
<div class="row no-gutter">
<div class="col-md-3">
<h2 class="nav-cat-text">By Types</h2>
</div>
<div class="col-md-9 col-xs-12">
<div class="wrap-tabs">
<ul class="nav nav-tabs nav-cat">
@foreach($categories as $category)
@if($category->parent_id == 2)
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}"><a href="javascript:;" data-toggle="tab">{{ ucfirst($category->name) }}</a></li>
@endif
@endforeach
</ul>
</div>
</div>
</div>
按玩家和类型,每个都有五个标签
执行代码时,玩家的第一个标签处于活动状态
但为什么第一个按类型选项卡不活动?
答案 0 :(得分:0)
如果条件在第一个循环中看起来你使用这个条件,它看起来就像你犯了错误
@if($category->parent_id == 1)
在第二个中你使用这个
@if($category->parent_id == 2)
所以By Types
首先不活跃
答案 1 :(得分:0)
这里的主要问题是您的第一个项目有parent_id = 1
,因此它是第一个循环,因此它处于活动状态。
但是在第二个foreach中,第一个项目没有parent_id = 2
,因为它当然具有前面提到的parent_id = 1
。
每个@foreach之前。 <?php $x= 0;?>
并编辑代码:
@if($category->parent_id == 1)
<li role="presentation" class="{{ $x == 0 ? 'active' : '' }}">
<a href="javascript:;" data-toggle="tab">
{{ ucfirst($category->name) }}
</a>
</li>
<?php $x =1 ?>;
@endif
和第二个循环相同
答案 2 :(得分:0)
我建议你使用laravel中的集合。
首先,您可以使用过滤功能分类您的类别,如下所示。
<?php
$players = collect($categories)->filter(function($value){
return $value->parent_id === 1;
});
$types = collect($categories)->filter(function($value){
return $value->parent_id === 2;
});
?>
现在,你有不同的类别,循环它们。
@foreach($players as $category)
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}">
<a href="javascript:;" data-toggle="tab">{{ ucfirst($category->name) }}</a>
</li>
@endforeach
@foreach($types as $category)
<li role="presentation" class="{{ $loop->first ? 'active' : '' }}">
<a href="javascript:;" data-toggle="tab">{{ ucfirst($category->name) }}</a>
</li>
@endforeach