사용자 정의 페이지로 이동하기 위해 laravel 5 페이징에서 사용자 정의 페이지 번호 입력 상자를 구현하는 방법
大家讲道理
大家讲道理 2017-05-16 16:48:07
0
1
1748

제목 그대로 데이터베이스에서 가져온 데이터가 수백 페이지에 달합니다. 하지만 laravel에서 제공하는 페이지네이터는 현재 페이지의 앞과 뒤의 페이지만 표시합니다.
하지만 페이징 바에 없는 페이지로 이동하고 싶을 때에는 페이지 점프를 통해서만 원하는 페이지까지 한 단계씩 이동할 수 있습니다.
사용자가 사용자 정의 페이지 번호를 입력한 다음 해당 페이지로 이동하여 데이터를 탐색할 수 있는 입력 상자를 페이징 표시줄에 표시하는 방법이 있습니까?

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

모든 응답(1)
淡淡烟草味

가능하다는 점을 분명히 말씀드리며, 매우 간단합니다. 두 가지 방법 모두 views/vendor/pagination 디렉터리에서 작동됩니다. views/vendor/pagination目录下操作:

  1. 修改default.blade.php,类似代码如下:

<ul class="pagination  no-margin pull-right">
    {{-- 首页 --}}
    @if ($paginator->onFirstPage())
        <li class="disabled">
            <span>首页</span>
        </li>
    @else
        <li>
            <a href="{{ $paginator->url(1) . '&limit=' . $paginator->perPage() }}">首页</a>
        </li>
    @endif

    {{-- 上一页 --}}
    @if ($paginator->onFirstPage())
        <li class="disabled">
            <span>上一页</span>
        </li>
    @else
        <li>
            <a href="{{ $paginator->previousPageUrl() . '&limit=' . $paginator->perPage() }}">上一页</a>
        </li>
    @endif

    {{-- Pagination Elements --}}
    @foreach ($elements as $element)
        <!-- "Three Dots" Separator -->
        @if (is_string($element))
            <li class="disabled"><span>{{ $element }}</span></li>
        @endif

        <!-- Array Of Links -->
        @if (is_array($element))
            @foreach ($element as $page => $url)
                @if ($page == $paginator->currentPage())
                    <li class="active"><span>{{ $page }}</span></li>
                @else
                    <li><a href="{{ $url . '&limit=' . $paginator->perPage() }}">{{ $page }}</a></li>
                @endif
            @endforeach
        @endif
    @endforeach

    {{-- 下一页 --}}
    @if ($paginator->hasMorePages())
        <li>
            <a href="{{ $paginator->nextPageUrl() . '&limit=' . $paginator->perPage() }}">下一页</a>
        </li>
    @else
        <li class="disabled">
            <span>下一页</span>
        </li>
    @endif

    {{-- 尾页 --}}
    @if ($paginator->hasMorePages())
        <li>
            <a href="{{ $paginator->url($paginator->lastPage()) . '&limit=' . $paginator->perPage() }}">尾页</a>
        </li>
    @else
        <li class="disabled">
            <span>尾页</span>
        </li>
    @endif
</ul>
<ul class="clearfix"></ul>

{{-- 增加输入框,跳转任意页码和显示任意条数 --}}
<ul class="pagination pagination-sm no-margin no-padding pull-right">
    <li>
        <span data-toggle="tooltip" data-placement="bottom" title="输入页码,按回车快速跳转">
            第 <input type="text" class="text-center no-padding" value="{{ $paginator->currentPage() }}" id="customPage" data-total-page="{{ $paginator->lastPage() }}" style="width: 50px;"> 页 / 共 {{ $paginator->lastPage() }} 页
        </span>
    </li>
    <li>
        <span data-toggle="tooltip" data-placement="bottom" title="输入每页条数,按回车快速跳转">
            每页 <input type="text" class="text-center no-padding" value="{{ $paginator->perPage() }}" id="customLimit" data-total="{{ $paginator->total() }}" style="width: 50px;"> 条 / 共 {{ $paginator->total() }} 条
        </span>
    </li>
</ul>
  1. 自定义一个分页模板文件,如custom.blade.php,然后在其他模板中的分页方法参数中指定这个分页模板,如{!! $articles->render('vendor/pagination/custom') !!}

    1. default.blade.php를 수정하세요. 비슷한 코드는 다음과 같습니다:
    🎜 으아악
    1. 🎜custom.blade.php와 같은 페이징 템플릿 파일을 사용자 정의한 다음 {!와 같은 다른 템플릿의 페이징 방법 매개변수에 이 페이징 템플릿을 지정하세요! ! $articles->render('vendor/pagination/custom') !!};🎜🎜🎜
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿