当前位置:   article > 正文

Django--8 Django+Datatables插件+Ajax实现数据表_django datatables

django datatables

                                              Django+Datatables插件+Ajax实现数据表

     Datatables是一款jquery表格插件。它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能。

  • 分页,即时搜索和排序
  • 几乎支持任何数据源:DOM, javascript, Ajax 和 服务器处理
  • 支持不同主题 DataTables, jQuery UI, Bootstrap, Foundation
  • 各式各样的扩展: Editor, TableTools, FixedColumns ……
  • 丰富多样的option和强大的API
  • 支持国际化
  • 超过2900+个单元测试
  • 免费开源 ( MIT license )! 商业支持

    Datatables下载链接:https://pan.baidu.com/s/1OgLgdiFoHo5rJv0e8lBTqg 提取码:1fru  

1 下载DataTables解压,拷贝到static文件目录下

2 在HTML页面配置

在页面头部添加引用

    <!-- DataTables CSS -->

    <link rel="stylesheet" type="text/css" href="/static/DataTables-1.10.21/media/css/jquery.dataTables.css">

    <!-- jQuery -->

    <script type="text/javascript" charset="utf8" src="/static/DataTables-1.10.21/media/js/jquery.js"></script>

    <!-- DataTables -->

    <script type="text/javascript" charset="utf8" src="/static/DataTables-1.10.21/media/js/jquery.dataTables.js"></script>

3 在页面创建表格usertab

  1. <table id="usertab" class="display">
  2. <thead>
  3. <tr>
  4. <th>用户名</th>
  5. <th>密码</th>
  6. <th>邮箱</th>
  7. </tr>
  8. </thead>
  9. <tbody>
  10. <tr>
  11. <td>王浩</td>
  12. <td>123456</td>
  13. <td>w@qq.com</td>
  14. </tr>
  15. </tbody>
  16. </table>

4 创建js文件sunck.js

$(document).ready(function () {

    console.log("**************")

});

5 解析器urls.py创建url

6 创建模型User

插入几条数据

7 创建视图ajaxuser和ajaxdata

  1. def ajaxuser(request):
  2. return render(request,"myApp/ajaxuser.html")
  3. def ajaxdata(request):
  4. users = User.objects.all()
  5. list = []
  6. for user in users:
  7. user_info = {
  8. 'name': user.name,
  9. 'password': user.password,
  10. 'email': user.email,
  11. }
  12. list.append(user_info)
  13. user_dic = {}
  14. user_dic['data'] = list
  15. return JsonResponse(user_dic)

8 启动服务器

python manage.py runserver

打印******,说明sunck.js文件运行正常

8 在sunck.js文件添加语句

     实现页面点击按钮,发送ajax请求,从服务器取出数据,数据渲染到前端html页面的table里。

  1. $(document).ready(function () {
  2. console.log("**************")
  3. $('#example').DataTable( {
  4. ajax:{//ajax请求后台
  5. url: '/ajaxdata/',
  6. type: 'GET',
  7. dataType: 'json',
  8. },
  9. "columns": [
  10. { "data": "name" },
  11. { "data": "password" },
  12. { "data": "email" }
  13. ],
  14. language:{
  15. zeroRecords:'抱歉,没有检索到数据',
  16. search:'检索', // 将英文search改为中文
  17. searchPlaceholder:'请输入',//搜索框提示功能
  18. lengthMenu:'每页显示_MENU_条记录',
  19. info:'显示第_START_到第_END_条记录,共_TOTAL_条',
  20. paginate:{'next':'下页','previous':'下页','first':'第一页','last':'最后一页'},
  21. infoEmpty:'没有数据',
  22. infoFiltered:"(从_MAX_条数据检索)",
  23. },
  24. } );
  25. });

点击按钮

检索功能

排序功能

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/224335
推荐阅读
相关标签
  

闽ICP备14008679号