官方网站:http://datatables.club/example/
<!-- DataTables CSS -->css引入的
<link rel="stylesheet" type="text/css" href="http://cdn.datatables.net/1.10.7/css/jquery.dataTables.css">
<!-- jQuery -->
<script type="text/javascript" charset="utf8" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<!-- DataTables -->
<script type="text/javascript" charset="utf8" src="http://cdn.datatables.net/1.10.7/js/jquery.dataTables.js"></script>
1.先引入上面的文件
2.html写上这些,th为表格的标题栏,可以自己定义好
<table id="table_id" class="display">
<thead>
<tr>
<th>xxx</th>
<th>xxx</th>
<th>xxx</th>
<th>xxx</th>
<th>xxx</th>
<th>xxx</th>
<th>xxx</th>
</tr>
</thead>
<tbody>
</tbody>
</table>

3.开始初始化表格插件

$(document).ready( function () {
var tables=$('#table_id').DataTable({
"oLanguage": { //表格的语言设置
"sProcessing": "正在获取数据,请稍后...",
"sLengthMenu": "显示 _MENU_ 条",
"sZeroRecords": "没有您要搜索的内容",
"sInfo": "从 _START_ 到 _END_ 条记录 总记录数为 _TOTAL_ 条",
"sInfoEmpty": "记录数为0",
"sInfoFiltered": "(全部记录数 _MAX_ 条)",
"sInfoPostFix": "",
"sSearch": "搜索",
"sUrl": "",
"oPaginate": {
"sFirst": "第一页",
"sPrevious": "上一页",
"sNext": "下一页",
"sLast": "最后一页"
}
},
"bProcessing" : true, //DataTables载入数据时,是否显示‘进度’提示
// "serverSide": true,
"autoWidth":false,
//"sScrollY" : 350, //DataTables的高
"sPaginationType" : "full_numbers", //详细分页组,可以支持直接跳转到某页
"iDisplayStart": 0,//刷新插件后显示的第几页(如果一页为10条数据,填10就显示第二页)
"ajax":{
"url":"url地址"//输入url地址
},
columns: [//定义接受到的数据,“key”
{ data: 'id' },
{ data: 'name' },
{ data: 'industry' },
{ data: 'source' },
{ data: 'location'},
{ data: 'serviceStatus'},
{ data : null}
],
'bStateSave': true,//配置好这个,刷新页面会让页面停留在之前的页码
"columnDefs": [{
"targets": 6,//编辑
"data": null,//下面这行,添加了编辑按钮和,删除按钮
"defaultContent": "<button id='editrow' class='btn btn-primary' type='button' style='margin-right:10px;'>编辑</button><button id='delrow' class='btn btn-primary' type='button'>删除</button>"
}],
"createdRow": function( row, data, index ) {
//每加载完一行的回调函数
          $('td', row).eq(5).css('font-weight',"bold").css("color","red");//获取到具体行具体格的元素
}
});
-----------//以下为自定义的删除按钮事件,可以忽略,也可以参考写法----------------
$('#table_id tbody').on( 'click', 'button#delrow', function () {
var data = tables.row( $(this).parents('tr') ).data();
//tables.ajax.reload();重新获取数据
//tables.draw(false);重新刷新页面
if(confirm("是否确认删除这条信息")){
$.ajax({
url:'http://10.10.1.183:8080/crm/enterprise/'+data.id,
type:'delete',
timeout:"3000",
cache:"false",
success:function(str){
if(str.data){
tables.row().remove();//删除这行的数据
window.location.reload();//重新刷新页面,还有一种方式:tables.draw(false);(这是不刷新,重新初始化插件,但是做删除时候,老有问题)
}
},
error:function(err){
alert("获取数据失败");
}
});
} });
$('#table_id tbody i').css({"fontStyle":"normal"});
$('#table_id tbody').on( 'click', 'button#editrow', function () {
//获取数据
var data = tables.row( $(this).parents('tr') ).data();
//清空内容
$('.pop_clear_text input').val('');
//弹出层展示
$('.pop').show();
//填充内容
$('.pop_id').val(data.id);
$('.pop_name').val(data.name);
$('.pop_industry').val(data.industry);
$('.pop_source').val(data.source);
$('.pop_location').val(data.location);
$('.pop_serviceStatus').val(data.serviceStatus);
});
//弹出层的功能
$('.pop_cancel,.pop_close').on("click",function(){
$('.pop').hide();
});
$('.pop_confirm').on('click',function(){
var n=parseInt($('.pop_id').val());
console.log(typeof(n));
$.ajax({
url:'http://10.10.1.183:8080/crm/enterprise',
type:'PUT',
contentType: "application/json",
timeout : "3000",
cache:false,
data: JSON.stringify({
"id":n,
"name":$('.pop_name').val(),
"industry":$('.pop_industry').val(),
"location":$('.pop_location').val(),
"source":$('.pop_source').val(),
"serviceStatus":$('.pop_serviceStatus').val()
}),
dataType: "json",
success:function(str){
//弹窗关闭
$('.pop').hide();
window.location.reload();
},
error:function(err){
alert("数据刷新失败,请重新刷新");
}
});
});
//添加事件
$('.table_list_add').on("click",function(){
//先清空
$('.table_list_name').val('');
$('.table_list_industry').val('');
$('.table_list_source').val('');
$('.table_list_location').val('');
$('.table_list_serviceStatus').val('');
//展示
$('.table_list').show();
});
//增加弹窗的功能
$('.table_list_close,.table_list_cancel').on("click",function(){
$('.table_list').hide();
});
$('.table_list_confirm').on("click",function(){
$.ajax({
url:'http://10.10.1.183:8080/crm/enterprise',
type:'POST',
contentType: "application/json",
timeout : "3000",
cache:false,
data: JSON.stringify({
"name":$('.table_list_name').val(),
"industry":$('.table_list_industry').val(),
"location":$('.table_list_location').val(),
"source":$('.table_list_source').val(),
"serviceStatus":$('.table_list_serviceStatus').val()
}),
dataType: "json",
success:function(str){
//弹窗关闭
$('.table_list').hide();
window.location.reload();
$('#table_id_last').click();
},
error:function(err){
alert("数据刷新失败,请重新刷新");
}
});
});
//控制这个表格大小
$('#table_id_wrapper').css({"width":"1400px","margin":"20px auto"});
} );
转自:http://www.cnblogs.com/shiyou00/p/5606865.html

datatables 前端表格插件 增删改查功能的更多相关文章

  1. jQuery EasyUI/TopJUI实现数据表格的增删改查功能(不写js,纯HTML实现!!!)

    jQuery EasyUI/TopJUI实现数据表格的增删改查功能(不写js,纯HTML实现!!!) 废话不多说,直接贴上代码 <table id="configEdatagrid&q ...

  2. JQuery Easyui/TopJUI 用JS创建数据表格并实现增删改查功能

    JQuery Easyui/TopJUI 用JS创建数据表格并实现增删改查功能 html <table id="productDg"></table> &l ...

  3. 【BootStrap】--具有增删改查功能的表格Demo

    [BootStrap]--具有增删改查功能的表格Demo 目录(?)[+] 前言 版本一 样式 代码 版本二 样式 代码 版本三 样式 代码 总结 前言 bootstrap的表格样式,有类似EasyU ...

  4. 用AngularJS实现对表格的增删改查(仅限前端)

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  5. BootstrapTable与KnockoutJS相结合实现增删改查功能

    http://www.jb51.net/article/83910.htm KnockoutJS是一个JavaScript实现的MVVM框架.通过本文给大家介绍BootstrapTable与Knock ...

  6. 快速开发平台WebBuilder中ExtJS表格的增删改查

    使用WebBuilder可实现表格的自动增删改查功能,而无需编写前台脚本和后台SQL. WebBuilder开源项目地址:http://www.putdb.com 自动生成的页面: <!DOCT ...

  7. 【原生】js实现表格的增删改查

    说在前面的,写给小白白的,大神请绕道~ 今天用原生js写一下动态表格的增删改查,主要是熟悉一下js的DOM操作. 首先,做一个表格,用来显示提交的数据,如图下: 此处,我添加了编号.姓名.密码.生日. ...

  8. SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学、字符串、日期时间)函数[转]

    SQL server 创建 修改表格 及表格基本增删改查 及 高级查询 及 (数学.字符串.日期时间)函数   --创建表格 create table aa ( UserName varchar(50 ...

  9. Online Coding开发模式 (通过在线配置实现一个表模型的增删改查功能,无需写任何代码)

    JEECG 智能开发平台. 开发模式由代码生成器转变为Online Coding模式                      (通过在线配置实现一个表模型的增删改查功能,无需一行代码,支持用户自定义 ...

随机推荐

  1. 调度系统任务创建---创建一个MultiJob的任务(四)

    我们如果下面这种拓扑结构的调度任务,该任务的拓扑结构就是一个有向五环图DAG,有fork,有join的操作等. 可以通过jenkins创建MultiJob的任务实现: 实例任务的拓扑结构: Multi ...

  2. 通过配置的方式Autofac 《第三篇》

    一.基本配置 1.通过配置的方式使用Autofac <?xml version="1.0"?> <configuration> <configSect ...

  3. python中Scikit-Learn机器学习模块

    Scikit-Learn是基于python的机器学习模块,基于BSD开源许可证.这个项目最早由DavidCournapeau 在2007 年发起的,目前也是由社区自愿者进行维护. Scikit-Lea ...

  4. TCP/IP协议学习(四) 协议概述

    生活中有舒适区,借口成为懒惰的护身符,学习也有舒适区,逃避便是阻止进步的最大障碍. 经过半年多嵌入式方面的工作和学习,我提高了很多,但同时我也对自己所面临的问题逐渐清晰: 1. 偏于实践,理论基础不牢 ...

  5. 入坑HttpServletRequest.getParameterMap

    在项目开发的时候遇到一个小坑,在发送了异步请求以后,回调的时候传递给我一个参数直接就是HttpServletRequest的请求,下面简称request: 在使用的时候自以为很简单,直接get就好了嘛 ...

  6. C语言中system()函数的用法总结(转)

    system()函数功能强大,很多人用却对它的原理知之甚少先看linux版system函数的源码: #include <sys/types.h> #include <sys/wait ...

  7. iOS沙盒路径的查看和使用

    1.模拟器沙盒目录 文件都在个人用户名文件夹下的一个隐藏文件夹里,中文叫资源库,他的目录其实是Library. 因为应用是在沙箱(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文 ...

  8. MySQL限时解答

    MySQL在国内各个行业的使用率越来越高,使用场景也越多,相应的遇到的疑惑也越来越多.在遇到这些问题之后,目前已有的解决途径有 1.培训(这是从长计议的方式,不能解决燃眉之急) 2.BBS(目前BBS ...

  9. AS3全局与局部坐标转换

    在大部分需要用户点击的游戏中,坐标的转换是一种必须熟练掌握的方法. 首先在一个700x700的舞台中创建2个方块,红色的大方块A是600x600,位于(50,50),绿色的小方块B是300x300.A ...

  10. 51nod 1158 全是1的最大子矩阵

    题目链接:51nod 1158 全是1的最大子矩阵 题目分类是单调栈,我这里直接用与解最大子矩阵类似的办法水过了... #include<cstdio> #include<cstri ...