【问题标题】:How to paginate data Laravel and Ajax如何对数据进行分页 Laravel 和 Ajax
【发布时间】:2023-04-01 18:49:01
【问题描述】:

我在使用 Laravel 分页和 Ajax 时遇到了一点问题。我成功获取了前 10 个数据,但无法获取接下来的 10 个数据,依此类推。

下面是我的代码

 public function FetchClassList()
{   
    $user_id = Input::get("user_id");
    $offset = Input::get("offset", 0);
    $limit = 10;


        $class_list = DB::table('users')
                ->leftJoin('profiles', 'users.user_id', '=', 'profiles.user_id')
                ->select('user_sname','user_fname','users.user_id','user_uname')
                ->where('users.userid','!=',$user_id)
                ->orderBy('users.user_sname')
                ->skip($offset)->take($limit)->get();

        $totalItems = DB::table('users')
                ->leftJoin('profiles', 'users.user_id', '=', 'profiles.user_id')
                ->where('users.user_id','!=',$usere_id)->count();

        $class_list = Paginator::make($class_list, $totalItems, $limit);

        return Response::json(($class_list));

}

从代码中返回total,per_page,current_page,last_page,from,to,我该返回哪一个给服务器获取接下来的10条数据?

【问题讨论】:

  • 向我们展示您的 ajax 和响应数据。

标签: jquery ajax laravel


【解决方案1】:

尝试以动态方式增加偏移变量的值

$offset = Input::get("offset", 0);

因为它被静态初始化为零。伪代码:

$offset = ($page * $per_page) - $per_page;

following link 是一个相关问题。

【讨论】:

  • 感谢您的回复。我已经这样做了,但是返回的current_page 没有增加。如何跟踪我所在的页面?
  • 您可以使用分页器上的 appends 方法添加到分页链接的查询字符串中。这将生成如下所示的 URL:example.com/something?page=2&sort=votes,然后您可以监视当前页面捕获页面参数。
猜你喜欢
  • 2015-09-24
  • 2023-03-21
  • 2021-06-14
  • 2019-11-03
  • 2019-06-09
  • 2015-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多