Javascript只使用即将到来的工作日——忽略周末
Javascript use only coming weekdays - disregard weekends
我怎么能只有工作日与javascript。
下面是我当前的js;
<script>
$( document ).ready(function() {
var days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
var months = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var d = new Date();
function ordinal_suffix_of(i) {
var j = i % 10,
k = i % 100;
if (j == 1 && k != 11) {
return i + "st";
}
if (j == 2 && k != 12) {
return i + "nd";
}
if (j == 3 && k != 13) {
return i + "rd";
}
return i + "th";
}
var currDay = d.getDate();
var day = days[ d.getDay() ];
var month = months[ d.getMonth() ];
var today = day + " " + ordinal_suffix_of(currDay) + " " + month;
var message2 = "The earliest delivery time today (" + today + ") is at 12:00noon";
var container = document.getElementById('availability-container');
var div = document.createElement('div');
div.className = 'availability';
div.innerHTML = "<p>" + message2; + "</p>";
container.appendChild(div);
$('.availability').addClass('animated pulse');
});
</script>
我怎样才能让"今天"只显示工作日而忽略周末,例如如果今天是星期五,不显示星期六和星期天显示星期一。
PS:我可以用PHP完成这个。
谢谢!
<script>
$( document ).ready(function() {
var days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
var months = ['January','February','March','April','May','June','July','August','September','October','November','December'];
var d = new Date();
function ordinal_suffix_of(i) {
var j = i % 10,
k = i % 100;
if (j == 1 && k != 11) {
return i + "st";
}
if (j == 2 && k != 12) {
return i + "nd";
}
if (j == 3 && k != 13) {
return i + "rd";
}
return i + "th";
}
//----Edited Section
var currDay = d.getDate();
var day= d.getDay();
var numberOfDaysToAdd = 0;
if(day==6){
numberOfDaysToAdd= 2;
}else if(days==0){
numberOfDaysToAdd= 1;
}
currDay.setDate(currDay.getDate() + numberOfDaysToAdd);
var day = days[ currDay.getDay() ];
var month = months[ currDay.getMonth() ];
//--- End of Edited Section
var today = day + " " + ordinal_suffix_of(currDay) + " " + month;
var message2 = "The earliest delivery time today (" + today + ") is at 12:00noon";
var container = document.getElementById('availability-container');
var div = document.createElement('div');
div.className = 'availability';
div.innerHTML = "<p>" + message2; + "</p>";
container.appendChild(div);
$('.availability').addClass('animated pulse');
});
</script>
试试这个:
while
循环直到满足条件将有帮助!
$(document).ready(function() {
var days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];
var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var daysToAvoid = ['Friday', 'Saturday', 'Sunday'];
function ordinal_suffix_of(i) {
var j = i % 10,
k = i % 100;
if (j == 1 && k != 11) {
return i + "st";
}
if (j == 2 && k != 12) {
return i + "nd";
}
if (j == 3 && k != 13) {
return i + "rd";
}
return i + "th";
}
var d = new Date();
var currDay = d.getDate();
var day = days[d.getDay()];
var month = months[d.getMonth()];
while (daysToAvoid.indexOf(day) !== -1) {
d.setDate(currDay + 1);
currDay = d.getDate();
day = days[d.getDay()];
month = months[d.getMonth()];
}
var today = day + " " + ordinal_suffix_of(currDay) + " " + month;
var message2 = "The earliest delivery time today (" + today + ") is at 12:00noon";
var container = document.getElementById('availability-container');
var div = document.createElement('div');
div.className = 'availability';
div.innerHTML = "<p>" + message2 + "</p>";
container.appendChild(div);
$('.availability').addClass('animated pulse');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="availability-container"></div>
下面的函数将始终确保var someDate为工作日。
var someDate = new Date();
var day= d.getDay();
var numberOfDaysToAdd = 0;
if(day==6){
numberOfDaysToAdd= 2;
}else if(days==0){
numberOfDaysToAdd= 1;
}
someDate.setDate(someDate.getDate() + numberOfDaysToAdd);
你可以这样写。
function getNextWeekday()
{
var date = new Date();
date.setDate(date.getDate() + 1);
var day = date.getDay();
if (day == 0)
{
date.setDate(date.getDate() + 1);
}
else if (day == 6)
{
date.setDate(date.getDate() + 2);
}
return date;
}
相关文章:
- 使用AngularJS从时间戳中获取工作日
- 从工作日结束到下一个工作日开始的完整日历JS包装时间
- 在Javascript中计算两个日期之间的工作日,节假日除外
- 如果是周末javascript,请更改日期
- 下周末'javascript中的s datetime返回无效日期
- 检查日期是否为周末javascript
- 如何从用户输入的日期中获取工作日
- 如何使用国际化的dataTable和jQuery对“工作日,日”格式进行排序
- Javascript计算明年的同一个工作日
- 在jquery日期选择器中禁用日期和特定工作日
- 在magento日期选择器中禁用周末
- 带额外日期的工作日Javascript
- 使用jQuery's的Datepicker仅显示3个工作日
- 如何在javascript中根据周数、工作日和年份获取日期
- 选择“仅限周末的日期”
- 如何计算'工作日'使用moment.js在Javascript中的两个日期之间
- 增加额外天数,但仅在工作日(周一至周五)并跳过周末
- Javascript只使用即将到来的工作日——忽略周末
- 确定日期是周末还是工作日
- 计算两次约会之间有多少工作日和周末