从jquery UI日历中选择一个月的所有工作日

问题描述:

我想从Jquery UI日历中选择一个月时获取一个月的所有工作日。从jquery UI日历中选择一个月的所有工作日

下面是从date到date的选择代码,但是我需要的是,当我选择一个月时,它应该打印整个月份的所有平日名称。

eg: monday,tuesday,wednesday,thursday,friday,saturday,sunday 
    monday,tuesday,wednesday,thursday,friday,saturday,sunday 
    monday,tuesday,wednesday,thursday,friday,saturday,sunday 
    monday,tuesday,wednesday,thursday,friday,saturday,sunday 

从所选月份的开始日期日期到结束月份。

<input id="from" /> 
<input id="to" /> 
<button id="getBetween">Get Between Dates</button> 
<div id="results"></div> 
$("#from").datepicker(); 
$("#to").datepicker();  

$('#getBetween').on('click', function() { 
    var start = $("#from").datepicker("getDate"), 
     end = $("#to").datepicker("getDate"), 
     currentDate = new Date(start), 
     between = [] 
    ; 

    while (currentDate <= end) { 
     between.push(new Date(currentDate)); 
     currentDate.setDate(currentDate.getDate() + 1); 
    } 

    $('#results').html(between.join('<br> ')); 
}); 
+0

我编辑你想要的标题为更好地理解......你可能会在编辑上面,这样你就不会得到进一步的反对票。另请检查我的新答案:https://stackoverflow.com/a/45861167/3001970,并使其正确,如果它适合你! – wittich

下面的代码片段将列出所选日期范围内的所有日子。我已经删除了代码片段的日期选择器引用。从你的问题中不清楚的是,日期名称是否应该分解成几个星期。

function getDayName(date) { 
 
    var dayNames = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday']; 
 
    
 
    return dayNames[date.getDay()]; 
 
} 
 

 

 
$('#getBetween').on('click', function() { 
 
    var start = new Date($("#from").val()), 
 
     end = new Date($("#to").val()), 
 
     between = []; 
 

 
    while (start <= end) { 
 
     between.push(getDayName(start)); 
 
     start.setDate(start.getDate() + 1); 
 
    } 
 

 
    $('#results').html(between.join('<br> ')); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
from start date date of a selected month to end month. 
 

 
<input id="from" value="2017-08-01"/> 
 
<input id="to" value="2017-08-31"/> 
 
<button id="getBetween">Get Between Dates</button> 
 
<div id="results"></div>

+0

您好Thijs thx为您的回应,但只需选择一个日期选择器不是从到日期。 – Praveen

+0

Thx为您的回应 – Praveen

+0

很抱歉,您听到的不是您要寻找的解决方案。我想你遇到的问题对我来说并不清楚。我希望别人能够帮助你。 – Thijs

这里可以对@Thuhs答案检查意见后修改的答案。这里工作jsfiddle

这个想法是通过getDay()得到星期几,并从具有星期名称的数组中返回该值。小插件moonth-picker返回该月的第一天。函数new Date(selectedDate.getFullYear(), selectedDate.getMonth() + 1, 0, 23, 59, 59)称呼最后一天。

$("#InlineMenu").MonthPicker({ 
 
    // SelectedMonth: '04/' + new Date().getFullYear(), 
 
    OnAfterChooseMonth: function(selectedDate) { 
 
    \t 
 
     \t var currentDate = selectedDate,  \t 
 
      lastDayOfMonth = new Date(selectedDate.getFullYear(), selectedDate.getMonth() + 1, 0, 23, 59, 59),   
 
      weekdays = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"], 
 
      between = []; 
 
\t \t \t \t 
 
     while (currentDate <= lastDayOfMonth) { 
 
      between.push(weekdays[new Date(currentDate).getDay()]); 
 
      currentDate.setDate(currentDate.getDate() + 1); 
 
     } 
 
     
 
     $('#results').html(between.join(', ')); 
 
     
 
    } 
 
});
<script type="text/javascript" src="//code.jquery.com/jquery-1.9.1.js"></script> 
 
<script type="text/javascript" src="//code.jquery.com/ui/1.9.2/jquery-ui.js"></script> 
 
<link rel="stylesheet" type="text/css" href="//code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css"> 
 
<link rel="stylesheet" type="text/css" href="//rawgit.com/KidSysco/jquery-ui-month-picker/v3.0.0/demo/MonthPicker.min.css"> 
 
<script type="text/javascript" src="//rawgit.com/digitalBush/jquery.maskedinput/1.4.1/dist/jquery.maskedinput.min.js"></script> 
 
<script type="text/javascript" src="//rawgit.com/KidSysco/jquery-ui-month-picker/v3.0.0/demo/MonthPicker.min.js"></script> 
 

 
<div id='InlineMenu' style="float: left; margin-right: 20px;"></div> 
 
<div id="results" style="padding: 20px;"></div>

+0

嗨对不起,我提到的错误评论,而不是日期选择器我需要月份选择器,当我选择一个月然后它应该打印,任何方式thx为您的回应 – Praveen

+0

@Praveen我编辑答案...是你在找什么? – wittich

+0

@ wittich非常感谢大家伙..... – Praveen