目前总结了2种方法:

1. Ajax 分页

尼玛各种google,stackoverflow,搞了好久才总结出这个,之前使用Pagination tag loading的方式不好用,并且不能进行ajax提交请求的页面无刷新的方式去分页

1.view.py

 from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.shortcuts import render
def xxx(request):
rows = cursor.fetchall()
paginator = Paginator(rows, 15) //how many items per page
page = request.POST.get('page')
try:
rows = paginator.page(page)
except PageNotAnInteger:
# If page is not an integer, deliver first page.
rows = paginator.page(1)
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
rows = paginator.page(paginator.num_pages)
return render(request,'ajax_page.html', {'rows': rows})

2. ajax_page.html

<div class="pagination">
<span class="step-links">
{% if rows.has_previous %}
<a id='pre' href="#">previous</a>
{% endif %}
<span class="current">
Page {{ rows.number }} of {{ rows.paginator.num_pages }}.
</span>
{% if rows.has_next %}
<a id="next" href="#" >next</a>
{% endif %}
</span>
</div>

3. JS -Ajax 部分

 {%block js%}
<script type="text/javascript">
$('.step-links #next').click(function(){
{% if rows.has_next %}
page={{ rows.next_page_number }};
{% endif %}
$.ajax({type:"POST",url:"/submitjobs/",data:{"page":page}, success:function(data){
$("#jobs_table").html(data);
}
})
});
$('.step-links #pre').click(function(){
{% if rows.has_previous %}
page={{ rows.previous_page_number }};
      {% endif %}
$.ajax({type:"POST",url:"/submitjobs/",data:{page":page}, success:function(data){
$("#jobs_table").html(data);
}
})
});
</script>
{%endblock%}

2. Datatable - plugin for Jquery (http://datatables.net/)

这种方法quick and dirty 唯一缺点就是不适用海量数据一般几百来页也是可以的,只需在js中调用dataTable方法就好。

数据填充已经在方法1中使用render.request将数据载入table.

{%block js%}
<script type="text/javascript">
$('#job_table').dataTable();
</script>
{%endblock%}

最新文章

  1. TFS 2015(Visual Studio Team Foundation Server)的下载和安装
  2. web初学之重定向与请求转发
  3. OD使用教程12
  4. react6 事件传递参数
  5. java socket client
  6. SIGGRAPH
  7. HDU1257 最小拦截系统 【贪婪】
  8. Oracle生成查询包括对应于所有数据表记录语句中指定的字段名
  9. Python 中的 if __name__ == &#39;__main__&#39; 该如何理解
  10. SAM failed to write changes to the database 问题处理
  11. python开发之虚拟环境管理:virtualenv、virtualenvwrapper、pycharm
  12. SRCNN
  13. asp.net core环境变量详解
  14. python 删除文件夹
  15. shell sort命令
  16. CentOS6安装各种大数据软件 第十章:Spark集群安装和部署
  17. SLAM Course - WS13/14 by Cyrill Stachniss (1) 课程资源汇总
  18. 【BZOJ】1096 [ZJOI2007]仓库建设
  19. Django进阶Model篇007 - 聚集查询和分组查询
  20. 九、 Java程序初始化的顺序(二)

热门文章

  1. kubernetes 1.7.2 安装 记录过程
  2. Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)
  3. Python基础-os和sys模块
  4. Python Variable Scope
  5. rails generator
  6. PAT 天梯赛 L1-029. 是不是太胖了 【水】
  7. 对JAVA的集合的理解
  8. 方法——&lt;37&gt;
  9. CSS 命名里面有大学问
  10. IMX6Q RTC驱动分析