2016-04-01 2 views
0

Ich möchte hinzufügen, einige Monate in einem bestimmten Datum und erhalten das Ergebnis im mm/tt/jj-Format mit Hilfe von JavascriptIch möchte Monate in ein Datum hinzufügen und in mm/tt/jj Format

Eg erhalten ; Hier ist mein Datum 04/01/2016

Meine Frequenzen sind jährlich, alle sechs Monate, alle 3 Monate, alle 2 Monate, monatlich, zweimal im Monat, alle zwei Wochen, wöchentlich, alle vier Wochen, Onetime.

Wenn ich die monatliche Option wählen, sollte das Ergebnis einer aktuellen 05/01/2016

jemand mir auf diesem helfen?

+0

'new Date(). setDate (new Date(). getDate() + NUMBER_OF_DAYS)' – Rayon

+0

Aber wie können wir die Anzahl der Tage caluclate? – user3518223

+0

Um einen Monat hinzuzufügen: 'new Date(). SetMonth (new Date(). GetMonth() + 1);' – Rayon

Antwort

0

Zuerst müssen Sie Ihr Datum in ein Date Objekt bekommen.

var myDate = new Date("2016-04-01 00:00:00"); 

Date muss die Eingabe im ISO format formatiert werden.

Sie können dann den folgenden verwenden, um eine unterschiedliche Anzahl von Monaten hinzu:

var myDate_6Months = new Date(myDate.setMonth(myDate.getMonth() + 6)); 

Die Linie schafft über ein neues Date Objekt von Ihrem ursprünglichen Datum Monat greifen, und das Hinzufügen einer gewünschten Menge von Monaten zu.

Wenn Sie die Ausgabe waren myDate_6Months Sie erhalten würden:

Sat Oct 01 2016 00:00:00 

11 monat So fügen:

var myDate_11Months = new Date(myDate.setMonth(myDate.getMonth() + 11)) 

, die zur Folge hätte:

Wed Mar 01 2017 00:00:00 

Um die zu bekommen Datum zurück in der mm/dd/yy eine einfache Methode ist moment.js zu verwenden.

moment(myDate_6Months).format('MM/DD/YY') 
+0

Ich habe schon versucht, diese Methode, aber ich muss das Datum im Format MM/DD/YY (03.01.2017) und nicht wie "Mi Mar 01 2017 00:00:00" und will nicht angezeigt werden die Zeit . Ich möchte nur das Datum bekommen (zB: 03/01/2017) – user3518223

0

Ich nehme an, dass Sie Tage auf einem Ereignis hinzufügen werden, erklärte ich Click Event hier.

HTML

<ul> 
    <li><button data-add="1 year">Add Year</button></li> 
    <li><button data-add="6 month">Add 6 month</button></li> 
    <li><button data-add="3 month">Add 3 month</button></li> 
    <li><button data-add="2 month">Add 2 month</button></li> 
    <li><button data-add="1 month">Add 1 month</button></li> 
    <li><button data-add="2 weeks">Add 2 weeks</button></li> 
</ul> 

JS

$('button').on('click', function() { 
    console.log("button click"); 
    var myDate = new Date(); 
    console.log(myDate); 
    var timeSpan = $(this).attr("data-add"); 
    switch(timeSpan) { 
     case "1 year": 
     myDate = myDate.setFullYear(myDate.getFullYear() + 1); 
     break; 
     case "3 month": 
     myDate = myDate.setMonth(myDate.getMonth() + 3); 
     break; 
     default: 
     break; 
    } 
    console.log(myDate); 
    moment(myDate).format('MM/DD/YYYY');//include moment js to format date 
}); 

Mit obigem Code können Sie die specifc Zeit Datum hinzufügen. zum Formatieren Datum können Sie verwenden moment.js

jsbin ist here

Verwandte Themen