Datatables是一款jquery表格插件。它是一个高度灵活的工具,可以将任何HTML表格添加高级的交互功能。

  分页,即时搜索和排序

  几乎支持任何数据源:DOM, javascript, Ajax 和 服务器处理

  支持不同主题 DataTables, jQuery UI, Bootstrap, Foundation
  各式各样的扩展: Editor, TableTools, FixedColumns ……
  丰富多样的option和强大的API
  支持国际化
  超过2900+个单元测试
  免费开源 ( MIT license )! 商业支持
  更多特性请到官网查看
  http://www.datatables.club/
下面是使用dt构建数据源和绑定
  1.构建datatable数据源
 

table = $('#hjInfoTable').DataTable({ //构造函数
    "data": data,//数据源--参过datatable.js说明文档data,data传入就行
    "columns": [
    { "title": "<input align=\"center\" type=\"checkbox\" class=\"checkAll\" checked=\"checked\" id=\"checkAll\"/>" },
    { "title": "工程编号s" },
    { "title": "用户号" },
    { "title": "户名" },
    { "title": "地址" },
  ],
  "oLanguage": {
    "sLengthMenu": "每页显示 _MENU_ 条",
    "sProcessing": "<img src='" + imgUrl + "'/><span>&nbsp;&nbsp;Loading...</span>",
    "sInfo": "从 _START_ 到 _END_, 共 _TOTAL_ 条记录",
    "sInfoEmpty": "",
    "sGroupActions": "_TOTAL_ records selected: ",
    "sAjaxRequestGeneralError": "未能连接服务器,请重试!",
    "sEmptyTable": "未找到相关记录",
    "sZeroRecords": "共 0 条记录",
    "sInfoFiltered": "(从 _MAX_ 条数据中检索)",
    "oPaginate": {
    "sPrevious": "上一页",
    "sNext": "下一页",
    "sPage": "页",
    "sPageOf": "of"
  },
    "sSearch": "搜索",
  },
  "bFilter": false, //搜索栏
    "fnInitComplete": function (oSettings, json) { //datatables初始化完毕后回调方法

    .......里面可加回调事件

    },
  "fnCreatedRow": function (nRow, aData, iDataIndex) {
    $(nRow).css("cursor", "pointer");
  },
  "aoColumnDefs": [{
    "render": function (data, type) {
      return "<div align='center'><input type=\"checkbox\" checked=\"checked\" name=\"ckb-jobid\" value=" + data + "></div>";
    }, "aTargets": 0 //第一列
  }, { //隐藏业务类型列
    "targets": [5],
    "visible": false
  },
  { //隐藏划价人列
    "targets": [6],
    "visible": false
  }
  { //隐藏用户站点列
    "targets": [11],
    "visible": false
  }, ],

 });
}

1.全选或者全部不选
//使用live绑定数据,因为checkAll还没有加载好
$("#checkAll").die().live("click", function () {
    if (this.checked) {
    $(this).attr('checked', 'checked')
    $("input[name='ckb-jobid']").each(function () {
    this.checked = true;
  });

} else {
    $(this).removeAttr('checked')
    $("input[name='ckb-jobid']").each(function () {
    this.checked = false;
    });
  }
});

2.点击单个按钮

$("input[name='ckb-jobid']").die().live("click", function () {
  if ($(this).is(":checked") == false) {
    $("#checkAll").prop("checked", false);
  } else {
    var flag = true;
    $("#checkAll").prop("checked", true);
    $("input[name='ckb-jobid']").each(function () {
    if (this.checked == false) {
      $("#checkAll").prop("checked", false);
      flag = false;
      return;
    }
  });
}

});

(转载https://blog.csdn.net/younghaiqing/article/details/83010449)

DataTable添加checkbox实现表格数据全选,单选(点选)的更多相关文章

  1. easyui tree datagrid动态添加表头和表格数据,动态弹出框,修改和删除按钮

    1.要有获取表头的URL和表格的URL 背景:点击树的一个节点,就加载一个表格,这个表格是动态的,表头和表格数据都是动态的 解决方案:需要两个URL,一个是获取表头的URL,一个是获取表格数据的URL ...

  2. html 和 html5(一)(表格 | 列表 | 提交按钮 | 单选 |复选 | 框架 | 脚本 | html字符实体 )

    一.框架 使用iframe来显示目录链接页面 iframe可以显示一个目标链接的页面 目标链接的属性必须使用iframe的属性,如下实例: 实例 <iframe src="demo_i ...

  3. JSF dataTable 添加列 动态创建数据表 列

    @Named @ViewScoped public class LiveRangeService implements Serializable { private List< Map<S ...

  4. angular JS中使用jquery datatable添加checkbox点击事件

    'use strict'; app.controller('DataTableCtrl', function ($scope, $compile) { $scope.selected = []; $s ...

  5. elementUi使用dialog的进行信息的添加、删除表格数据时进行信息提示。删除或者添加成功的信息提示(SpringBoot+Vue+MybatisPlus)

    文章目录 1.添加新用户,通过dialog的弹窗形式 1.1 添加的按钮 1.2 调用方法设置窗口可见 1.3 窗口代码 1.4 提交注册信息方法 1.5 使用mybatisPlus方法进行添加信息到 ...

  6. bootstrap 列表 表格 表单 复选 单选 多选 输入框组

    一.列表 ul li 二.表格 table  (http://www.runoob.com/bootstrap/bootstrap-tables.html) 1. 基本表格 <table cla ...

  7. wpf中为DataGrid添加checkbox支持多选全选

    项目中用到DataGrid, 需要在第一列添加checkbox, 可以多选.全选. 其中涉及的概念DataTemplate, DataGridCellStyle, DataGridCellContro ...

  8. JQuery实现表格的全选和反选,以及分页勾选保存(laypage插件分页的使用)

    需求: 1.全选与取消全选 2.单个勾选,点击表格单元格中checkbox勾选,也可以在点击行勾选,便与用户操作 3.分页勾选保存 4.固定表头 功能一: 说明:操作全选按钮的同时,遍历每一个tr中的 ...

  9. DevExpress GridControl使用教程:之 添加 checkbox 复选框

    添加一列,FieldName为"FLAG",将ColumnEdit设置为复选框样式. gridview1   =>optionsbehavior =>  editabl ...

随机推荐

  1. P3287 [SCOI2014]方伯伯的玉米田

    首先可以证明,一定存在一种最优解,每次选择的区间结尾都是 \(n\).因为如果某一个区间结尾不是 \(n\),将其替换成 \(n\) 仍然保持单调不下降.接着都按这个策略拔高玉米. 令 \(f_{i, ...

  2. Linux如何安装Docker?

    使用yum安装(centos7) Docker要求Centos系统的内核版本高于3.10,安装Docker前需要验证你的服务器内核版本是否支持Docker. 通过 uname -r 命令来查看你的服务 ...

  3. 为什么学完C语言觉得好像没学一般?

    不少同学从Hello world学到文件操作之后,回顾感觉会又不会? 学会了又感觉没学会?这种不踏实.模糊虚无的感觉?   原因在于编程不同于理论学科,你听懂和理解了理论就可以运用. 比如历史地理,看 ...

  4. ZAB

    ZAB=ZooKeeper Atomic Broadcast ZooKeeper原子消息广播协议,支持崩溃回复的原子广播协议. zk使用一个单一的主进程来接受并处理客户端的所有事务请求,并采用ZAB的 ...

  5. Jmeter介绍、下载及配置

    Jmeter介绍: Apache JMeter是Apache组织开发的基于Java的压力测试工具.最初被设计用于Web应用测试,后来扩展到其他测试领域. 它可以用于测试静态和动态资源,例如静态文件.J ...

  6. 莫比乌斯反演进阶-洛谷P2257/HDU5663

    学了莫比乌斯反演之后对初阶问题没有任何问题了,除法分块也码到飞起,但是稍微变形我就跪了.用瞪眼观察法观察别人题解观察到主要内容除了柿子变形之外,主要就是对于miu函数的操作求前缀和.进而了解miu函数 ...

  7. moviepy音视频剪辑:使用fl_time进行时间特效处理报错OSError: Error in file xxxx, Accessing time

    ☞ ░ 前往老猿Python博文目录 ░ 老猿在使用moviepy音视频剪辑的fl_time进行时间特效处理时,系统报错: OSError: Error in file F:\video\WinBas ...

  8. 第8.5节 Python类中的__new__方法和构造方法__init__关系深入剖析:执行顺序及参数关系案例详解

    上节介绍了__new__()方法这个比构造方法还重要的方法的语法,本节通过案例来详细剖析__new__()方法的细节以及它与构造方法之间的关系. 一.    案例说明 本节以圆Cir类为例来说明,为了 ...

  9. 第14章 web前端开发小白学爬虫结束语

    老猿学爬虫应该是2019年7月初开始的,到现在2个多月了,有段时间了,这部分一直是老猿期待能给大家带来收获的,因为老猿爬虫实战应用的场景与网上老猿已知的场景基本都不一样,是从复用网站登录会话信息来开发 ...

  10. MySQL(14)---Docker搭建MySQL主从复制(一主一从)

    Docker搭建MySQL主从复制(一主一从) 上一篇博客写了MYSQL主从复制原理 : MySQL(13)---MYSQL主从复制原理 这篇我们来写 Docker搭建MYSQL主从复制(一主一从) ...