2016-05-24 7 views
0

Ich muss Monate hinzufügen, so verwende ich date.getMonth() +8; und es ist ein Samstag, aber ich muss Wochenenden zu beseitigen. Wenn ich diese Codezeilen hinzufüge:Hinzufügen von Monaten zum aktuellen Datum und wenn der Samstag 2 Tage zur Eingabe addiert?

if(date.getDay() % 6) 
    var date.getdate()+1; 

Es funktioniert nicht. Was kann ich also tun? Hier Geige https://jsfiddle.net/a3f3yb0s/ und hier

var date = new Date(); 
 

 
var day = date.getDate(); 
 
var month = date.getMonth() +8; 
 
var year = date.getFullYear(); 
 
var year2 = date.getFullYear() +1; 
 

 

 
if(month>12) { 
 
month=month%12; 
 
year=year2; 
 
} 
 

 
if (month < 10) month = "0" + month; 
 
if (day < 10) day = "0" + day; 
 

 
var today = year + "-" + month + "-" + day; 
 

 

 
document.getElementById('theDate').value = today;
<input type="date" id="theDate">

+1

Tipp: Moment.js verwenden. –

Antwort

0

Snippet Warum nicht nur die Berechnungen am Tag Objekt tun und lassen Sie den Browser alle Kalenderberechnungen handhaben:

// get a date object 
 
// 8 months from 2016-01-01 is a Saturday 
 
var date = new Date(2016, 1, 1); 
 

 
// add 8 months 
 
date.setMonth(date.getMonth() + 8); 
 

 
alert(date); // will show a Saturday 
 

 
// check if it is a saturday 
 
if(date.getDay() == 6) 
 
{ 
 
    // if it is then add two days 
 
    date.setDate(date.getDate() + 2); 
 
} 
 

 
alert(date); // will show a Monday

+0

Es macht Semikolon auf, wenn ich date.setDate (date.getDate() + 2); aber wenn du mir Arbeitscodes in JFiddle zeigst, wird das großartig. :) –

+0

Ich verstehe nicht, es macht Semikolon auf, wenn ich date.setDate (date.getDate() + 2) '?? – IMTheNachoMan

+0

Ich habe ein Code-Snippet hinzugefügt, um es Ihnen zu zeigen. – IMTheNachoMan

Verwandte Themen