前端控件JQuery Datatables使用——常用功能初始化

本文详述了如何初始化和扩展JQuery Datatables,包括Buttons功能(如打印、复制、导出)、Select(行选择)、ColReorder(列排序)和FixedColumns(固定列)。通过引入必要的JS和CSS文件,实现了如Excel导出、列可见性控制、全选取消等实用特性。
摘要由CSDN通过智能技术生成

本文用于自己记录,忘记时可以用来回顾。点击这里进入JQuerydatatable官网API地址

 JQuery Datatables初始化

个人比较喜欢JQueryDatatables的Bootstrap4风格,所以文章以Bootstrap4风格为例。

JQueryDatatable的初始化很简单,按照官网的举例说明,只要如下几个JS和CSS文件即可:

1、jquery-3.3.1.min.js,当然高版本的JS也是可以的

2、jquery.dataTables.min.js

3、dataTables.bootstrap4.min.js

4、bootstrap.min.css

5、dataTables.bootstrap4.min.css

注意:JS文件的引用顺序很重要,JQuery必须放在第一位,然后dataTables.min.js是第二位,JQuery不能重复引用

既然使用了bootstrap.min.css,那我加入了bootstrap.min.js了,就用Bootstrap框架。忽略文件路径,代码如下图所示:

<script src="~/Scripts/jquery-3.4.1.min.js"></script>
<script src="~/Scripts/datatables/jquery.dataTables.min.js"></script>
<script src="~/Scripts/datatables/dataTables.bootstrap4.min.js"></script>
<link href="~/Content/bootstrap.min.css" rel="stylesheet" />
<link href="~/Scripts/datatables/dataTables.bootstrap4.min.css" rel="stylesheet" />
<script src="~/Scripts/bootstrap.min.js"></script>

 再加入官网复制来的HTML代码(因为太长,所以这里只列举了一部分),如下图所示:

<table id="example" class="table table-striped table-bordered" style="white-space: nowrap;width:100%;cursor:pointer" cellspacing="0">
        <thead>
            <tr>
                <th></th>
                <th>Name</th>
                <th>Position</th>
                <th>Office</th>
                <th>Age</th>
                <th>Salary</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td></td>
                <td>Tiger Nixon</td>
                <td>System Architect</td>
                <td>Edinburgh</td>
                <td>61</td>
                <td>$320,800</td>
            </tr>
            .............
        </tbody>
    </table>

再加入一段基本的JS代码,如下图所示:

<script type="text/javascript">
    var dtsLanguage = "/Scripts/datatables/datatables_zh-cn.txt"
    var mytable;

    $(document).ready(function () {

        mytable = $('#example').DataTable({
            pagingType: "full_numbers",
            language: {
                url: dtsLanguage
            }
        });

        mytable.on('order.dt search.dt', function () {
            mytable.column(0, { search: 'applied', order: 'applied' }).nodes().each(function (cell, i) {
                cell.innerHTML = i + 1;
            });
        }).draw();
    });
</script>

变量dtsLanguage存放了一个配置文件地址,配置文件用于更换默认英文的语言配置为中文配置,配置文件的内容如下:

{
    "buttons": {
		"pageLength": "显示 %d 行",
        "excel":"<i class='fa fa-file-excel-o'></i>&nbsp;导出Excel"
	},
    "decimal": "",
    "emptyTable": "表中数据为空",
    "info": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
    "infoEmpty": "显示第 0 至 0 项结果,共 0 项",
    "infoFiltered": "(由 _MAX_ 项结果过滤)",
    "InfoPostFix": "
  • 1
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值