javascript - 通过选择日期选择器创建数据表标题

标签 javascript jquery datatable datepicker

我尝试创建带有动态列的数据表,用于从/到日期选择器中进行选择。

列应该包含日期和 toDate 之间的 fromDate

JS代码

$("#from").datepicker();
$("#to").datepicker(); 

var strTopHead='<th rowspan="2">Name</th><th rowspan="2">Code</th><th rowspan="2">code</th>';

$('#getBetween').on('click', function () {

    $('#trTopHead').empty();
     $('#trBottomHead').empty();
    var start = $("#from").datepicker("getDate"),
        end = $("#to").datepicker("getDate"),
        currentDate = new Date(start),
        between = []
    ;
    if(start!=null&&end!=null){
    while (currentDate <= end) {
        between.push(new Date(currentDate).toJSON().substring(0,10));
        currentDate.setDate(currentDate.getDate() + 1);
    }

  //  $('#results').html(between.join('<br> '));
    for(var i=0;i<between.length;i++){
        strTopHead=strTopHead+'<th colspan="3">'+between[i]+'</th>';

    $('#trBottomHead').append('<th>C</th><th>D</th>               <th>E</th>');
        $('table>tbody').append('<tr><td>Tiger Nixon</td>                <td>System Architect</td>                <td>$320,800</td>                <td>Edinburgh</td>                <td>5421</td>               <td>t.nixon@datatables.net</td></tr>');
    }
            $('#trTopHead').append(strTopHead);

        $('#example').dataTable({
        "scrollY":        "200px",
        "scrollCollapse": true
        });
    }
});

这里只显示单个日期作为列

I tried like this

最佳答案

我已经对你的代码做了一些修改

var date= new Date();//changes
$("#from").datepicker();
$("#to").datepicker();

$("#from").val($.datepicker.formatDate("mm/dd/yy",date));//changes
$("#to").val($.datepicker.formatDate("mm/dd/yy",date));//changes


$('#getBetween').on('click', function () {
    var strTopHead='';
    $('#trTopHead').empty();
     $('#trBottomHead').empty();
   strTopHead=strTopHead+ '<th rowspan="2">Name</th><th rowspan="2">Code</th><th rowspan="2">code</th>';
    var start = $("#from").datepicker("getDate"),
        end = $("#to").datepicker("getDate"),
        currentDate = new Date(start),
        between = []
    ;
    if(start!=null&&end!=null){
    while (currentDate <= end) {
        currentDate.setDate(currentDate.getDate() + 1);//changes
        between.push(new Date(currentDate).toJSON().substring(0,10));//changes

    }
    var strTopHeadDates='';
  //  $('#results').html(between.join('<br> '));
    for(var i=0;i<between.length;i++){
        strTopHeadDates=strTopHeadDates+'<th colspan="3">'+between[i]+'</th>';

    $('#trBottomHead').append('<th>C</th><th>D</th>               <th>E</th>');
        $('table>tbody').append('<tr><td>Tiger Nixon</td>                <td>System Architect</td>                <td>$320,800</td>                <td>Edinburgh</td>                <td>5421</td>               <td>t.nixon@datatables.net</td></tr>');
    }
        strTopHead=strTopHead+strTopHeadDates;
            $('#trTopHead').append(strTopHead);

     $('#example').dataTable();
        console.log($("#from").val());
    }
});

try this code

关于javascript - 通过选择日期选择器创建数据表标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28872066/

相关文章:

html - 如何向数据表中的每一行添加按钮?

jquery - 刷新或重新加载数据表

javascript - 如何异步获取语言环境(nuxt.js + i18n + axios)

javascript - 如何使用 Firebase 数据制作简单的 d3 图表?

javascript - jQuery 删除/克隆

jquery - 如何阻止花车和类(class)相互推倒?

javascript - jquery 添加 div 两次

c# - WPF 应用程序将数据表写入 Excel 的更有效方法?

javascript - 将 jquery 函数转换为 javascript

javascript - 尝试使 JavaScript 中的游戏组件透明