2016-05-24 4 views
0

私はdate.getMonth() +8;とその土曜日を使用するので、月を追加する必要がありますが、私は週末を排除する必要があります。これらのコード行を追加すると:現在の日付に月を追加し、土曜日に入力するのに2日を追加する場合は、

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

これは機能しません。じゃあどうすればいい? ここhttps://jsfiddle.net/a3f3yb0s/ をいじるし、ここに理由だけではなく、日付オブジェクトに対して計算を行うと、ブラウザがすべてのカレンダーの計算を扱うことはできませ

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

ヒント:Moment.jsを使用してください。 –

答えて

0

をスニペットする:

// 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

私がdate.setDate(date.getDate()+ 2)を使用している場合、セミコロンをオンにします。しかし、もしあなたがjsfiddleで働くコードを見せてくれれば素晴らしいだろう。 :) –

+0

私はdate.setDate(date.getDate()+ 2)を使用している場合、そのセミコロンを作ることは理解していない '?? – IMTheNachoMan

+0

私はあなたにあなたを見せるためのコードスニペットを追加しました。 – IMTheNachoMan

関連する問題