jQuery插件datatables使用教程


Posted in Javascript onApril 21, 2016

jQuery 的插件 dataTables 是一个优秀的表格插件,提供了针对表格的排序、浏览器分页、服务器分页、筛选、格式化等功能。

如何把数据库中的数据以表格的形式展示到前端,实现有很多方法,最近用jquery的datatables插件来实现了发现还是比较简单的,今天我们来看一个例子,来说明这个插件的使用,基本原理是view函数从数据库中读出数据,jquery通过ajax获取数据并在前端展示出来,我们先定义一个models.py,如下:

from django.dbimport models
class MyModel(models.Model):
someAttr = models.CharField()
def __unicode__(self):
return self.someAttr

然后定义我们的view函数:

fromdjango.httpimportHttpResponse
fromdjango.coreimportserializers
from .modelsimportMyModel
defmyModel_asJson(request):
object_list = MyModel.objects.all() 
json = serializers.serialize('json', object_list)
return HttpResponse(json, content_type='application/json')

因为datatables接收的是json格式数据,所以从数据库中读出的数据要序列化,就是这句:

json = serializers.serialize(‘json', boject_list)

添加下url.py:

from django.conf.urlsimport patterns, url
urlpatterns = patterns('myapp.views',
url(regex=r'^$',
view='myModel_asJson',
name='my_ajax_url'),
)

最后就是模板文件内容了:

<tablecellpadding="0" cellspacing="0" border="0" id="example">
<thead>
<tr><th>My Attr Heading</th></tr>
</thead>
<tbody></tbody>
</table>
<scripttype="text/javascript" language="javascript" class="init">
$(document).ready(function() {
$('#example').dataTable( {
"processing": true,
"ajax": {
"processing": true,
"url": "{% url 'my_ajax_url' %}",
"dataSrc": ""
},
"columns": [
{ "data": "fields.someAttr },
{ "data": "pk" }
]
} );
} );
</script>

其中url指定你的view函数名称,columns指定要显示的列,这样数据就以表格的形式展示出来了,要想美观记得自己要上样式,推荐bootstrap,datatables是一次把数据全部加载到前端来处理,所以如果你加载的条目非常多,就会有停顿感,必须要加上bServierSide参数。

关于jQuery插件datatables使用教程小编就给大家介绍到这里,希望对大家有所帮助!

Javascript 相关文章推荐
原生JavaScript实现连连看游戏(附源码)
Nov 05 Javascript
javascript获取web应用根目录的方法
Feb 12 Javascript
javascript中的nextSibling使用陷(da)阱(keng)
May 05 Javascript
JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
Oct 17 Javascript
Javascript模块化编程详解
Dec 01 Javascript
javascript实现拖动元素交换位置
Nov 29 Javascript
实用又漂亮的BootstrapValidator表单验证插件
May 30 Javascript
JavaScript进阶练习及简单实例分析
Jun 03 Javascript
JS实现输入框提示文字点击时消失效果
Jul 19 Javascript
纯js实现悬浮按钮组件
Dec 17 Javascript
原生JS中slice()方法和splice()区别
Mar 06 Javascript
微信小程序如何再次获取用户授权的方法
May 10 Javascript
JavaScript预解析及相关技巧分析
Apr 21 #Javascript
JavaScript实现显示函数调用堆栈的方法
Apr 21 #Javascript
JS实现队列与堆栈的方法
Apr 21 #Javascript
JS、jQuery中select的用法详解
Apr 21 #Javascript
jQuery中iframe的操作(点击按钮新增窗口)
Apr 20 #Javascript
JS生成某个范围的随机数【四种情况详解】
Apr 20 #Javascript
浅析JS动态创建元素【两种方法】
Apr 20 #Javascript
You might like
php小经验:解析preg_match与preg_match_all 函数
2013/06/29 PHP
PHP登陆后跳转到登陆前页面实现思路及代码
2014/01/17 PHP
简单的php+mysql聊天室实现方法(附源码)
2016/01/05 PHP
php轻松实现文件上传功能
2016/03/03 PHP
PHP+mysql实现从数据库获取下拉树功能示例
2017/01/06 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
php实现session共享的实例方法
2019/09/19 PHP
ThinkPHP 5.1 跨域配置方法
2019/10/11 PHP
php文件上传原理与实现方法详解
2019/12/20 PHP
javascript URL编码和解码使用说明
2010/04/12 Javascript
JavaScript 构造函数 面相对象学习必备知识
2010/06/09 Javascript
document.getElementById介绍
2011/09/13 Javascript
JavaScript中几个重要的属性(this、constructor、prototype)介绍
2013/05/19 Javascript
BootStrap响应式导航条实例介绍
2016/05/06 Javascript
JavaScript获取当前url根目录(路径)
2016/06/17 Javascript
jQuery 中ajax异步调用的四种方式
2016/06/28 Javascript
jQuery的ajax和遍历数组json实例代码
2016/08/01 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
jQuery通过改变input的type属性实现密码显示隐藏切换功能
2017/02/08 Javascript
jQuery使用EasyUi实现三级联动下拉框效果
2017/03/08 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
详解vue.js下引入百度地图jsApi的两种方法
2018/07/27 Javascript
如何根据业务封装自己的功能组件
2019/04/19 Javascript
JavaScript实现的弹出遮罩层特效经典示例【基于jQuery】
2019/07/10 jQuery
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
[03:11]TI9战队档案 - Alliance
2019/08/20 DOTA
Mac在python3环境下安装virtualwrapper遇到的问题及解决方法
2019/07/09 Python
Python 根据数据模板创建shapefile的实现
2019/11/26 Python
HTML5头部标签的一些常用信息小结
2016/10/23 HTML / CSS
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
施华洛世奇中国官网:SWAROVSKI中国
2020/06/16 全球购物
2014年招生工作总结
2014/11/26 职场文书
小学中队活动总结
2015/05/11 职场文书
2015年学校总务处工作总结
2015/05/19 职场文书
2016学习全国教书育人楷模先进事迹心得体会
2016/01/21 职场文书
何时使用Map来代替普通的JS对象
2021/04/29 Javascript