jquery - django - 在滚动上加载更多 - 我有分页,我如何加载更多?

标签 jquery python django pagination

我想编写一个代码,当我到达页面底部时从数据库中获取更多数据。

我有这个views.py:

locations = Location.objects.filter(**s_kwargs).distinct('id')
paginator = Paginator(locations, 10)
if  request.GET.get('page'):
   locs = paginator.page(request.GET.get('page'))
else:
   locs = paginator.page(1)
data['locs'] = locs
return render_to_response("result.html",data,context_instance=RequestContext(request)) 

这是我用于检测页面底部的 js:

 $(window).scroll(function () {
  if ($(document).height() <= $(window).scrollTop() + $(window).height()) {
    alert("start loading more data");//<--- load more data from db. 
  }
 });

我陷入了思绪,不知道该怎么做,分页器让我很困惑。我如何从数据库中获取下一个数据?我如何将新的数据附加到 html 中的现有数据?我需要你的指导

最佳答案

您似乎想在下一页的 javascript 中发出 AJAX 请求。在您的 views.py 中,您可能想要做类似的事情

return HttpResponse(json.dumps(data), mimetype="application/json")

而不是像现在这样返回 HTML 页面。 (如果您还需要该 Controller 为原始页面提供服务,也许您可​​以有一个可选的查询参数,告诉服务器提供 JSON 响应而不是通常的 HTML。)

关于jquery - django - 在滚动上加载更多 - 我有分页,我如何加载更多?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18240549/

相关文章:

jquery - 本地网站中的实时 CSS 半饼图

jquery - 缩略图不会在屏幕上居中

python - 如何设置 Python CGI 服务器?

python - Django - 在图像编辑表单中删除 "Currently"并将其替换为实际图像

python - 是否可以在不使用 django 的身份验证和登录方法的情况下编写登录功能的代码?

jquery - CSS3 3D图像过渡组合

jquery - 有没有可能不使用 php 来创建投票系统的方法?

python - MySQL : rename primary key column which is foregin key to another table

Django:如何将 2 天添加到用户输入的现有日期

python - Django:异常值(2013, '2013: Lost connection to MySQL server during query',无)