簡體   English   中英

Laravel 8 在一個頁面中使用選項卡進行多頁分頁

[英]Laravel 8 Multiple Pagination in one page with tabs

我有一個頁面有兩個選項卡,每個選項卡都有它的分頁。 僅當我單擊選項卡時它才能正常工作,但是當我單擊上一頁或后一頁時,它會一直返回到第一個選項卡。 這是我在 controller 上的代碼:

 $entries = Entry::paginate(5,['*'],'entries')
        ->appends(request()->except('entries'));
 $company_responses= CompanyResponse::paginate(5,['*'],'company_responses')
        ->appends(request()->except('company_responses'));

在視圖中

{{$entries->appends(request()->except('entries'))->links()}}

{{$company_responses->appends(request()->except('company_responses'))->links()}}

選項卡鏈接

<div class="tab">
    <button class="tablinks" onclick="openTab(event,'tab1')">الملاحظات</button>
    <button class="tablinks" onclick="openTab(event,'tab2')">القيود</button>
</div>

我不知道我需要做什么才能讓它在之前或之后工作。

為每個選項卡創建一個單獨的查詢並對結果進行分頁

$tab1 = Model::where('column', 'value')->paginate(10);
$tab2 = Model::where('column', 'value')->paginate(15);

在分頁上使用 links() 方法的每個選項卡的結果

<div class="tab-content">
    <div class="tab-pane active" id="tab1">
        @foreach($tab1 as $result)
            {{ $result->column }}
        @endforeach
        {{ $tab1->links() }}
    </div>
    <div class="tab-pane" id="tab2">
        @foreach($tab2 as $result)
            {{ $result->column }}
        @endforeach
        {{ $tab2->links() }}
    </div>
</div>

正如 Crisha 所建議的那樣:為每個選項卡創建一個單獨的查詢並對結果進行分頁

$tab1 = Model::where('column', 'value')->paginate(10);
$tab2 = Model::where('column', 'value')->paginate(15);

我認為你應該能夠使用這個:

{{ $tab1->fragment('tab_id')->links() }}
{{ $tab2->fragment('tab_id')->links() }}

然后應該將選項卡 # 添加到分頁鏈接,您可能需要添加 tab1 和 tab2 其中有 tab_id - 因為這是未經測試的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM