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 相关文章推荐
你的编程语言可以这样做吗?
Sep 07 Javascript
jQuery 表单验证扩展代码(二)
Oct 20 Javascript
JavaScript执行效率与性能提升方案
Dec 21 Javascript
页面图片浮动左右滑动效果的简单实现案例
Feb 10 Javascript
js实现滑动触屏事件监听的方法
May 05 Javascript
js实现简洁大方的二级下拉菜单效果代码
Sep 01 Javascript
Angular和Vue双向数据绑定的实现原理(重点是vue的双向绑定)
Nov 22 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
Dec 28 Javascript
JavaScript实现简单的星星评分效果
May 18 Javascript
BootStrap的双日历时间控件使用
Jul 25 Javascript
js实现双人五子棋小游戏
May 28 Javascript
让JavaScript代码更加精简的方法技巧
Jun 01 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遍历目录viewDir函数
2009/12/15 PHP
PHP的5个安全措施小结
2012/07/17 PHP
浅析PHP安装扩展mcrypt以及相关依赖项(PHP安装PECL扩展的方法)
2013/07/05 PHP
PHP生成器简单实例
2015/05/13 PHP
php中关于socket的系列函数总结
2015/05/18 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
PHP使用finfo_file()函数检测上传图片类型的实现方法
2017/04/18 PHP
yii插入数据库防并发的简单代码
2017/05/27 PHP
实现php删除链表中重复的结点
2018/09/27 PHP
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
ie与ff下的event事件使用介绍
2013/11/25 Javascript
ListBox实现上移,下移,左移,右移的简单实例
2014/02/13 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
js实现完美兼容各大浏览器的人民币大小写相互转换
2015/10/29 Javascript
jQuery中借助deferred来请求及判断AJAX加载的实例讲解
2016/05/24 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
Angular浏览器插件Batarang介绍及使用
2018/02/07 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
2019/09/23 Javascript
layui: layer.open加载窗体时出现遮罩层的解决方法
2019/09/26 Javascript
d3.js实现图形缩放平移
2019/12/19 Javascript
Python打印scrapy蜘蛛抓取树结构的方法
2015/04/08 Python
详解python3实现的web端json通信协议
2016/12/29 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
Pycharm 字体大小调整设置的方法实现
2019/09/27 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
利用Python自动化操作AutoCAD的实现
2020/04/01 Python
python 解决selenium 中的 .clear()方法失效问题
2020/09/01 Python
python可视化分析的实现(matplotlib、seaborn、ggplot2)
2021/02/03 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
HTML5 文件域+FileReader 分段读取文件并上传到服务器
2017/10/23 HTML / CSS
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
党员教师群众路线思想汇报范文
2014/10/28 职场文书
青岛海底世界导游词
2015/02/11 职场文书
2015年秋季小学开学典礼主持词
2015/07/16 职场文书
化验室安全管理制度
2015/08/06 职场文书
2016年第104个国际护士节活动总结
2016/04/06 职场文书