Laravel 分页:分页 URL 中加入井号(#)
在 Laravel 中,分页链接默认会附加查询字符串参数,但如果你需要在分页 URL 中包含井号(#),你可能需要通过自定义分页生成逻辑来实现。
以下是一个示例,展示了如何在分页时保留井号(#):
// 假设你已经有了一个分页集合 $items,你可以在视图中这样使用:
{{-- 在分页链接中保留井号(#) --}}
{{ $items->appends(request()->input())->fragment('')->links() }}
// 注意:'fragment('')' 方法在生成分页链接时不会添加任何片段标识符,这样井号(#)就不会被自动添加。
在上面的代码中,request()->input()
方法用于保留当前请求的查询参数,fragment('')
方法确保在生成分页链接时不包含片段标识符,这样井号(#)就不会被自动加到 URL 中。
如果你需要在分页链接中同时保留井号(#)和查询参数,你可以这样做:
// 在控制器或者视图中
$queryString = http_build_query(request()->query()); // 获取查询字符串
$fragment = '#' . request()->fragment(); // 获取片段标识符
// 在视图中使用
{{-- 在分页链接中保留查询参数和井号(#) --}}
{{ $items->appends(request()->input())->fragment($fragment)->links() }}
在这个例子中,http_build_query()
函数用于将查询参数转换成字符串,然后你可以将其添加到分页链接中,同时保留井号(#)的存在。
评论已关闭