Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取两个日期之间的工作日数据_Javascript_Jquery - Fatal编程技术网

Javascript 获取两个日期之间的工作日数据

Javascript 获取两个日期之间的工作日数据,javascript,jquery,Javascript,Jquery,我想显示两个日期之间的所有日期。所以我写了 $( document ).ready(function() { $( "#day" ).click(function() { startJsonSession(); return false; }); function startJsonSession(){ var inputda

我想显示两个日期之间的所有日期。所以我写了

$( document ).ready(function() {

          $( "#day" ).click(function() {

                 startJsonSession();
                  return false;
            });

            function  startJsonSession(){

            var inputdate=$('#inputdate').val();
            //alert("Input Date!!!" + inputdate );

                var d = new Date(inputdate);

                var nowMS = d.getTime(); // get # milliseconds for today
                //alert(nowMS);
                var week = 1000*60*60*24*7; // milliseconds in one week
                //alert(week);
                var oneWeekFromNow = new Date(nowMS + week);
                //alert("oneWeekFromNow!!!" + oneWeekFromNow);
                var fromdate = d.getDate();

                var month = d.getMonth() + 1;
                var year = d.getFullYear();
                if (fromdate < 10) {
                    fromdate = "0" + fromdate;
                }
                if (month < 10) {
                    month = "0" + month;
                }
                //var date = fromdate + "/" + month + "/" + year;
                var date = year + "/" + month + "/" + fromdate;
                alert("InputDate!!!!" + date);

                //var weekdate=oneWeekFromNow.getDate() + "/" + month + "/" + year;
                var weekdate=year + "/" + month + "/" + oneWeekFromNow.getDate();
                alert("weekdate!!!" + weekdate);


                var tomorrow = new Date(d.getTime() + (24 * 60 * 60 * 1000));

                var tomorrowdate = tomorrow.getDate();

                var month1 = tomorrow.getMonth() + 1;
                var year1 = tomorrow.getFullYear();
                if (tomorrowdate < 10) {
                    tomorrowdate = "0" + tomorrowdate;
                }
                if (month1 < 10) {
                    month1 = "0" + month1;
                }

                //var nextday = tomorrowdate + "/" + month1 + "/" + year1;
                var nextday = year1 + "/" + month1 + "/" + tomorrowdate;
                alert("tomorrow!!!!" + nextday);


                    var d1 = new Date(date);
                    alert("D1!!!!!" + d1);
                    var d2 = new Date(weekdate);
                    var aDates = [];

                    do
                    {
                    aDates.push(d1.toString());
                    d1.setDate(d1.getDate()+1);
                    }
                    while (d1 <= d2);

                        alert("Dates!!!" +  aDates);
                    //alert(aDates.join("\n")); 


    }

    });
现在我可以在两个日期之间使用默认格式,我必须将默认格式更改为mm/dd/yyyy


你能给我提个建议吗?…

根据你的评论,你希望在选定日期后的7天内使用dd/mm/yy格式。javascript是

$("#startdate").datepicker({
    dateFormat: 'dd/mm/yy'
});


$("#getDate").click(function () {
    var start = $("#startdate").datepicker("getDate"),
    currentDate = new Date(start),
    between = [];
    for(var i=0;i<7;i++) {
        currentDate.setTime(currentDate.getTime() + 24*60*60*1000);
                                        //miliseconds in 1 day
        between.push(new Date(currentDate));

    }
     for (var i = 0; i < between.length; i++) {
        var date = $.datepicker.formatDate('dd/mm/yy', new Date(between[i]));
        between[i] = date;
    }

    console.log(between)//between is the required result
})

您可以使用以下功能更改日期格式:

function changeDateFormat(date) {
      var year = date.getFullYear();
      var month = (1 + date.getMonth()).toString();
      month = month.length > 1 ? month : '0' + month;
      var day = date.getDate().toString();
      day = day.length > 1 ? day : '0' + day;
      return month + '/' + day + '/' + year ;
}
编辑

我创造了一个新的世界

在创建数组适配器时,需要更改日期的格式,并将其推入数组中。 请参阅以下代码:

$( document ).ready(function() {

          $( "#day" ).click(function() {

                 startJsonSession();
                  return false;
            });
            function changeDateFormat(date) {
              var year = date.getFullYear();
              var month = (1 + date.getMonth()).toString();
              month = month.length > 1 ? month : '0' + month;
              var day = date.getDate().toString();
              day = day.length > 1 ? day : '0' + day;
              return month + '/' + day + '/' + year ;
        }
            function  startJsonSession(){

            var inputdate=$('#inputdate').val();
            //alert("Input Date!!!" + inputdate );

                var d = new Date(inputdate);

                var nowMS = d.getTime(); // get # milliseconds for today
                //alert(nowMS);
                var week = 1000*60*60*24*7; // milliseconds in one week
                //alert(week);
                var oneWeekFromNow = new Date(nowMS + week);
                //alert("oneWeekFromNow!!!" + oneWeekFromNow);
                var fromdate = d.getDate();

                var month = d.getMonth() + 1;
                var year = d.getFullYear();
                if (fromdate < 10) {
                    fromdate = "0" + fromdate;
                }
                if (month < 10) {
                    month = "0" + month;
                }
                //var date = fromdate + "/" + month + "/" + year;
                var date = year + "/" + month + "/" + fromdate;
                alert("InputDate!!!!" + date);

                //var weekdate=oneWeekFromNow.getDate() + "/" + month + "/" + year;
                var weekdate=year + "/" + month + "/" + oneWeekFromNow.getDate();
                alert("weekdate!!!" + weekdate);


                var tomorrow = new Date(d.getTime() + (24 * 60 * 60 * 1000));

                var tomorrowdate = tomorrow.getDate();

                var month1 = tomorrow.getMonth() + 1;
                var year1 = tomorrow.getFullYear();
                if (tomorrowdate < 10) {
                    tomorrowdate = "0" + tomorrowdate;
                }
                if (month1 < 10) {
                    month1 = "0" + month1;
                }

                //var nextday = tomorrowdate + "/" + month1 + "/" + year1;
                var nextday = year1 + "/" + month1 + "/" + tomorrowdate;
                alert("tomorrow!!!!" + nextday);


                    var d1 = new Date(date);
                    alert("D1!!!!!" + d1);
                    var d2 = new Date(weekdate);
                    var aDates = [];

                    do
                    {
                    var formattedDate = changeDateFormat(d1);
                    aDates.push(formattedDate);
                    d1.setDate(d1.getDate()+1);
                    }
                    while (d1 <= d2);

                        alert("Dates!!!" + aDates);
                    //alert(aDates.join("\n")); 


    }

    });

我想你以前也问过同样的问题。是的,Roshan在这里@date Picker在那里,Itz工作得很好。我想从一个日期选择器开始,如果你选择一个日期,它将自动运行长达7天,以获取周数据。我试过这一个,也使用了一个日期选择器,但无法获取…请建议我确定我将很快更新。因此,更改问题的标题您是否希望在选定日期后的7天内完成此操作,但仍然无法工作,我正在呼叫aDates。changeDateFormatdate…@rupalliPlease请参考编辑过的答案。希望你也在找同样的。