2016-05-24 10 views
0

Ich verwende DatePicker Kontrolle in SAPUI5, ich möchte insgesamt Tage zwischen selected Startdatum und Enddatum berechnen.Wie berechnet man die Gesamttage zwischen Startdatum und Enddatum in SAPUI5?

var startDate = this.getView().byId("DP-FromDate").getValue(); 
var endDate = this.getView().byId("DP-ToDate").getValue(); 
var sDate = new Date(startDate); 
var eDate = new Date(endDate); 

var diff = Math.abs(sDate.getTime() - eDate.getTime()); 
var diffD = Math.ceil(diff/(1000 * 60 * 60 * 24)); 
alert(diffD); 

ich immer bin sdate & eDate sind Invalid dates Fehler.

Antwort

0

Sie sollten getDateValue Methode anstelle von getValue verwenden.

getDateValue gibt Datum als JavaScript-Date-Objekt zurück. Es wird also nicht nötig sein, es in das Datumsformat zu konvertieren.

Dann würde Ihr Code sein:

var startDate = this.getView().byId("DP-FromDate").getDateValue(); 
var endDate = this.getView().byId("DP-ToDate").getDateValue(); 
var diff = Math.abs(startDate.getTime() - endDate.getTime()); 
var diffD = Math.ceil(diff/(1000 * 60 * 60 * 24)); 
alert(diffD); 
+0

Vielen Dank .. @Dopedev funktioniert gut –

0

Die getValue Methode der sap.m.DatePicker gibt eine formatierte und Datum String lokalisiert, beispielsweise (!) '12. Mai 2015', die nicht notwendigerweise als Eingabeparameter für den Date Konstruktor funktionieren wird.

Glücklicherweise müssen Sie nichts konvertieren: Sie müssen nur die Methode getDateValue verwenden. Es wird ein gebrauchsfertiges Date Objekt zurückgegeben.

Verwandte Themen