【问题标题】:How to filter multiple values in Datatables?如何过滤数据表中的多个值?
【发布时间】:2017-05-01 08:47:53
【问题描述】:

我有一个项目Here,我需要按日期范围进行过滤。

我不知道怎么给 .search() 方法添加第二个参数...

我想做类似的事情

           table.column(8).search($('#filter_start_date').val() 
            + $('this').val() + ')', true).draw();

我试过了:

        var datepickersOpt = {
            dateFormat: 'dd/mm/yy',
            minDate   : null
        }

        var dates = [];
        $("#filter_start_date").datepicker($.extend({

        },datepickersOpt));

        $("#filter_end_date").datepicker($.extend({
            onSelect: function() {

               dates.push('(?=.*' + $('#filter_start_date').val() + ')'); // 
               not sure about this regex

               dates.push('(?=.*' + $(this).val() + ')');

               table.column(8).search(dates.join('|'), true, false, 
              true).draw();

            }
        },datepickersOpt));

【问题讨论】:

    标签: jquery datatables


    【解决方案1】:

    知道了Here

    $.fn.dataTable.ext.search.push(
        function( settings, data, dataIndex ) {
            var min = new Date($('#filter_start_date').val());
            var max = new Date($('#filter_end_date').val());
            var date_var =   new Date(data[4]); // use data for the age column
    
            if ( ( isNaN( min ) && isNaN( max ) ) || ( isNaN( min ) && date_var <= max ) ||
            ( min <= date_var   && isNaN( max ) ) || ( min <= date_var && date_var <= max ) ) {
                return true;
            }
    
            return false;
        }
    );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-06
      • 1970-01-01
      相关资源
      最近更新 更多