Ich arbeite an einer Site, die Version 2.6 der Esri Javascript API verwendet. Ich habe ein Infofenster, in dem einige Datumsinformationen angezeigt werden, und das Datum liegt einen Tag hinter dem Datum in der Datenbank. Zum Beispiel:
Wenn ich ein Feature in ArcMap identifiziere, ist das zurückgegebene Datum der 15.08.2007. Wenn ich über den Rest-Endpunkt nach derselben Funktion frage, erhalte ich 2007/08/15 00:00:00 UTC. Wenn ich die Funktion in der Webanwendung identifiziere, ist das zurückgegebene Datum der 14.08.2007.
Im Javascript-Code formatiere ich das Datum wie folgt:
${SALEDT:DateFormat(selector: 'date', fullYear: true)}
Was verursacht dies und was kann ich tun, um das richtige Datum zurückzugeben?
arcgis-server
arcgis-javascript-api
time
Timothy Michael
quelle
quelle
Antworten:
Geben Sie in Ihrer Datumsformatierungsfunktion local: true an:
Die Antwort von Mintx erklärt, warum Sie dies tun müssen. Weitere Informationen zum Formatieren von Infofenster- / Popup-Inhalten finden Sie in der Hilfe: Formatieren von Infofensterinhalten .
Bearbeiten: Verwenden Sie DateString und nicht DateFormat, um die lokale Option anzugeben:
Edit 2: Dank der Mods ist hier die Antwort, die ursprünglich meinen Mintx gepostet hat, den ich oben erwähnt habe:
Bearbeiten 3: Ich habe eine schnelle, hackige Methode zusammengestellt, um dies mit einer benutzerdefinierten Formatierungsfunktion zu tun: jsfiddle.net/yEkjm Es gibt wahrscheinlich eine bessere Möglichkeit, dies zu tun ... Ich bin kein Experte für den Umgang mit Daten mit JS.
quelle