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 相关文章推荐
js的event详解。
Sep 06 Javascript
jQuery中[attribute]选择器用法实例
Dec 31 Javascript
使用js画图之画切线
Jan 12 Javascript
Jquery简单分页实现方法
Jul 24 Javascript
jquery仿苹果的时间/日期选择效果
Mar 08 Javascript
js模块加载方式浅析
Aug 12 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
Dec 24 jQuery
基于vue监听滚动事件实现锚点链接平滑滚动的方法
Jan 17 Javascript
js中的闭包学习心得
Feb 06 Javascript
layui实现文件或图片上传记录
Aug 28 Javascript
Next.js实现react服务器端渲染的方法示例
Jan 06 Javascript
react项目从新建到部署的实现示例
Feb 19 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
discuz 首页四格:最新话题+最新回复+热门话题+精华文章插件
2007/08/19 PHP
PHP中实现获取IP和地理位置类分享
2015/02/10 PHP
php时间函数用法分析
2016/05/28 PHP
Laravel关系模型指定条件查询方法
2019/10/10 PHP
XRegExp 0.2: Now With Named Capture
2007/11/30 Javascript
jquery复选框CHECKBOX全选、反选
2008/08/30 Javascript
仿迅雷焦点广告效果(JQuery版)
2008/11/19 Javascript
javascript 多种搜索引擎集成的页面实现代码
2010/01/02 Javascript
在Windows上安装Node.js模块的方法
2011/09/25 Javascript
引入autocomplete组件时JS报未结束字符串常量错误
2014/03/19 Javascript
jQuery获取节点和子节点文本的方法
2014/07/22 Javascript
JS拖动鼠标画出方框实现鼠标选区的方法
2015/08/05 Javascript
详解jQuery插件开发方式
2016/11/22 Javascript
利用Node.js对文件进行重命名
2017/03/12 Javascript
详解Angular 4.x NgIf 的用法
2017/05/22 Javascript
详解React Native 采用Fetch方式发送跨域POST请求
2017/11/15 Javascript
JS实现百度搜索接口及链接功能实例代码
2018/02/02 Javascript
vue中实现methods一个方法调用另外一个方法
2018/02/08 Javascript
vue axios 在页面切换时中断请求方法 ajax
2018/03/05 Javascript
vue页面离开后执行函数的实例
2018/03/13 Javascript
vue实现整屏滚动切换
2020/06/29 Javascript
vue-cli3 引入 font-awesome的操作
2020/08/11 Javascript
python常见数制转换实例分析
2015/05/09 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
python微元法计算函数曲线长度的方法
2018/11/08 Python
python调用opencv实现猫脸检测功能
2019/01/15 Python
pandas DataFrame 删除重复的行的实现方法
2019/01/29 Python
python接口自动化如何封装获取常量的类
2019/12/24 Python
html5视频播放_动力节点Java学院整理
2017/07/13 HTML / CSS
澳大利亚牛仔裤商店:Just Jeans
2016/10/13 全球购物
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
英国经典球衣网站:Classic Football Shirts
2017/05/20 全球购物
西班牙Polo衫品牌:Polo Club
2020/08/09 全球购物
Python初识逻辑与if语句及用法大全
2021/08/07 Python
详解Python中*args和**kwargs的使用
2022/04/07 Python
Python探索生命起源 matplotlib细胞自动机动画演示
2022/04/21 Python