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的Cookies
Jan 16 Javascript
js函数的延迟加载实现代码
Oct 11 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
Oct 22 Javascript
利用jQuary实现文字浮动提示效果示例代码
Dec 26 Javascript
充分发挥Node.js程序性能的一些方法介绍
Jun 23 Javascript
完美的js div拖拽实例代码
Sep 24 Javascript
javascript中闭包概念与用法深入理解
Dec 15 Javascript
Bootstrap table使用方法总结
May 10 Javascript
jQuery第一次运行页面默认触发点击事件的实例
Jan 10 jQuery
angular实现input输入监听的示例
Aug 31 Javascript
JS删除String里某个字符的方法
Jan 06 Javascript
微信小程序实现签字功能
Dec 23 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简单系统数据添加以及数据删除模块源文件下载
2008/06/07 PHP
利用PHP实现短域名互转
2013/07/05 PHP
Yii2中DropDownList简单用法示例
2016/07/18 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
关于Laravel参数验证的一些疑与惑
2019/11/19 PHP
网页自动刷新,不产生嗒嗒声的一个解决方法
2007/03/27 Javascript
让JavaScript 轻松支持函数重载 (Part 1 - 设计)
2009/08/04 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
2011/05/24 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
HTML长文本截取含有HTML代码同样适用的两种方法
2013/07/31 Javascript
JS实现转动随机数抽奖特效代码
2020/04/16 Javascript
JS中使用apply方法通过不同数量的参数调用函数的方法
2016/05/31 Javascript
基于jquery二维码生成插件qrcode
2017/01/07 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
NodeJS遍历文件生产文件列表功能示例
2017/01/22 NodeJs
angular2中使用第三方js库的实例
2018/02/26 Javascript
基于cropper.js封装vue实现在线图片裁剪组件功能
2018/03/01 Javascript
jQuery加PHP实现图片上传并提交的示例代码
2020/07/16 jQuery
pycharm 使用心得(八)如何调用另一文件中的函数
2014/06/06 Python
Python探索之URL Dispatcher实例详解
2017/10/28 Python
TensorFlow神经网络优化策略学习
2018/03/09 Python
Python使用Pandas库实现MySQL数据库的读写
2019/07/06 Python
Python中的类与类型示例详解
2019/07/10 Python
使用Python实现画一个中国地图
2019/11/23 Python
Pycharm快捷键配置详细整理
2020/10/13 Python
详解Java中一维、二维数组在内存中的结构
2021/02/11 Python
css3中less实现文字长阴影(long shadow)
2020/04/24 HTML / CSS
Cotton On美国网站:澳洲时装连锁品牌
2016/10/25 全球购物
飞利浦法国官网:Philips法国
2019/07/10 全球购物
数字天堂软件测试面试题
2012/12/23 面试题
公务员总结性个人自我评价
2013/12/05 职场文书
档案接收函范文
2014/01/10 职场文书
城市规划应届毕业生自荐信
2014/07/04 职场文书
2014年大学团支部工作总结
2014/12/02 职场文书
结婚老公保证书
2015/02/26 职场文书
2016年“12.3”国际残疾人日活动总结
2016/04/01 职场文书