zoukankan      html  css  js  c++  java
  • datatable 自定义排序 及 多列排序

    1.自定义排序(根据字段中的某些内容排序)

    //js
    <script type="text/javascript" src="jquery.dataTables.js"></script>
    <script type="text/javascript" src="dataTables.numericComma.js"></script> 
           jQuery.extend(jQuery.fn.dataTableExt.oSort, {
              "html-percent-pre": function (a) {
                 var x = String(a).replace(/<[sS]*?>/g, "");    
                 x = x.replace(/&amp;nbsp;/ig, "");                   //去除空格
                 x = x.replace(/%/, "");                          //去除百分号
                 return parseFloat(x);
              },
             "html-percent-asc": function (a, b) {                //正序排序引用方法
              return ((a < b) ? -1 : ((a > b) ? 1 : 0));
           },
           "html-percent-desc": function (a, b) {                //倒序排序引用方法
              return ((a < b) ? 1 : ((a > b) ? -1 : 0));
           }
        });      
           var oTable1 = $('#table_report').dataTable({
                    "aoColumnDefs": [
                        { "sType": "html-percent", "aTargets": [8] },    //指定列号使用自定义排序
                    ],
                    "bLengthChange": true, //开关,是否显示每页大小的下拉框
                    "aLengthMenu": [[5, 10, 25, -1], [5, 10, 25, "所有"]],
                    'iDisplayLength': 25, //每页显示10条记录
                    'bFilter': true,  //是否使用内置的过滤功能
                    "bInfo": true, //开关,是否显示表格的一些信息
                    "bPaginate": true //开关,是否显示分页器
                });
            });
    </script>

     上述内容来自 https://www.dazhuanlan.com/2020/03/07/5e63196a793a1/

    2.多列排序

    /* datatables允许同时指定多个列排序,有很多不同的方法来实现
    用户按住shirft,鼠标分别点击第一列,第二列等等,可以实现多列同时排序
    给每列加上columns.orderData选项,即如果指定列排序时,第一列有相同数据,则按照第二列排序
    使用columns.orderData选项给多列排序,比如[ [0,'asc'], [1,'asc'] ]
    使用order()方法实现多列排序,详细参见api
    注意,可以使用orderMulti 选项来禁用用户按住shift点击多列排序
    */
    <script>
        $(document).ready(function () {
            $('#example').DataTable({
                //ajax: "../data/arrays.txt",
    
                columnDefs: [
                    {
                        targets: [0],
                        orderData: [0,1]
                    },
                    {
                        targets: [1],
                        orderData: [1,0]
                    }
                ]
            });
        });
    </script>
  • 相关阅读:
    Java内存模型(JMM)
    线程安全问题的本质详解: 原子性、有序性、可见性
    Quartz实现分布式可动态配置的定时任务
    Java引用详解-StrongReference SoftReference WeakReference PhantomReference
    流行的报表生成工具-JXLS
    Java线程监控及中断
    IntelliJ IDEA 内存优化最佳实践
    Dapeng框架-开源高性能分布式微服务框架
    Scala实现Try with resources自动关闭IO
    Jvm启动,关闭及对应钩子
  • 原文地址:https://www.cnblogs.com/indifferent/p/14760078.html
Copyright © 2011-2022 走看看