DataTable的初始化与事件注册
2024-09-12 21:37:06
TypeScript代码:
let tabledata = data as any[];
if (this.dataTable) {
this.dataTable.clear();
this.dataTable.destroy(); }
/*
* ip = models.IPAddressField()
access_time = models.DateTimeField()
method = models.CharField()
url = models.CharField()
protocol = models.CharField()
status_code = models.SmallIntegerField()
size = models.BigIntegerField()
referer = models.CharField()
client = models.CharField()
detail = models.CharField()*/
let search:boolean|object;
if (this.searchParams.keyword && this.searchParams.keyword.length>0){
search = {"search": this.searchParams.keyword};
}else {
search = {};
}
this.dataTable = $('#eventstable').DataTable({
'data' : tabledata,
'paging' : true,
'lengthChange': true,
'searching' : true,
'ordering' : true,
'info' : false,
'autoWidth' : false,
'columns': [
{ title: "access_time", 'data': "access_time" },
{ title: "detail", 'data': "detail" }
]
});
事件注册代码,ES6的:
let table = $('#dataTable').DataTable( {
data: data,
'paging' : true,
'lengthChange': true,
'searching' : true,
'ordering' : true,
'info' : false,
'autoWidth' : true,
//使用对象数组,一定要配置columns,告诉 DataTables 每列对应的属性
//data 这里是固定不变的,name,position,salary,office 为你数据里对应的属性
columns: [
{ data: 'id',title:"ID" },
{ data: 'name',title:"名称" },
{ data: 'id',title:"操作" ,"render":function (data, type, row, meta ) {
return'<button type="button" data-id="'+data+'" class="btn btn-primary btn-sm">执行</button>';
}}
]
} );
$("button.btn-sm").on("click",function (event) {
console.log($(event.target).attr("data-id"))
return false
})
table.on("draw",function () {
console.log("draw------>")
$("button.btn-sm").on("click",function (event) {
console.log($(event.target).attr("data-id"))
return false
}) })
解释一下,为什么这么写,初始化完需要注册一次,每次页面page或者排序draw完需要再注册一次,比较奇怪的事第一次init以后的draw不会引发draw事件,所以不得不为第一次初始化完成绑定了一次。
最新文章
- 折腾域名的dns
- Linux添加主机路由
- Solrj和Solr DIH索引效率对比分析
- jQuery知识点总结(第二天)
- eclipse 项目修改和更新项目,回退版本,解决分支的冲突的办法
- oracle 密码忘记 找回密码
- compilation 元素(ASP.NET 设置架构)
- Nginx 配置指令的执行顺序(六)
- CSS之基础
- Webpack学习系列(二)
- bzoj 2073 暴力
- 通信传输利器Netty(Net is DotNetty)介绍
- HIbernate常见异常(转载)
- list练习
- Quartz.Net进阶之一:初识Job作业和触发器
- loadrunner&#160;脚本开发-文件读写操作
- Java反射《一》获取类
- Python 基础补充(一) 列表、元组、集合、字典的区别和相互转换
- awbeci—一个帮助你快速处理日常工作的网址收集网站
- Android 编译时:m、mm、mmm、mma、mmma的区别