Ich versuche eine vom Benutzer eingegebene Zeit von Ortszeit in GMT + 1 mit MomentJS Timezone zu konvertieren, jedoch habe ich diese Bibliothek noch nie benutzt und die Dokumentation verwirrt mich eher.MomentJS Zeitzone - Lokale Eingabezeit für GMT + 2
Meine Form verwendet Bootstrap Datumsauswahl und Bootstrap Timepicker eine Benutzeroberfläche zur Eingabe von Datum und Uhrzeit eines Ereignisses zu erstellen, wie folgt aus:
<label>Date:</label>
<input type="text" id="dteDay">
<input type="hidden" id="iptDate">
<label>Time (GMT+1 only):</label>
<input id="iptTime" type="text">
<script>
$("#dteDay").datepicker({
format: "dd/mm/yyyy",
todayBtn: "linked",
todayHighlight: true,
startDate: "-2d",
endDate: "+0d",
});
$('#iptTime').timepicker({
minuteStep: 5,
showMeridian: false
});
</script>
Dann habe ich diese Funktion verwenden, das Datum und die Zeit zu sammeln, um zu senden eine PHP-Datei, etwa so:
function CreateReport(){
if($("#sltMyName").select2("val") == null){
ShowError("Please Enter Your Name!");
}
else if($("#sltTheirName").select2("val") == null){
ShowError("Please Enter Their Name!");
}
else if($("#dteDay").val() == ""){
ShowError("Please Enter the Date of Incident!");
}
else if($("#iptTime").val() == ""){
ShowError("Please Enter the Time of Incident!");
}
else if($("#txtStory").val() == ""){
ShowError("Please Enter the Full Story!");
}
else if($("#txtEvidence").val() == ""){
ShowError("Please List your Evidence");
}
else{
if($("#sltOffence").val() == "Other" && $("#iptOtherOffence").val() == ""){
ShowError("Please Enter Offence");
}
else if($("#sltOffence").val() == "Other"){
var Offence = $("#iptOtherOffence").val();
}
else{
var Offence = $("#sltOffence").val();
}
$.post(
'includes/complaint/index.php',
{
Server: $("#sltServerRegion").val(),
MyName: JSON.stringify($("#sltMyName").select2("val")),
TheirName: JSON.stringify($("#sltTheirName").select2("val")),
Date: $("#dteDay").val(),
Time: $("#iptTime").val(),
Offence: Offence,
Story: $("#txtStory").val(),
Evidence: $("#txtEvidence").val(),
RefundAmount: $("#iptRefundAmount").val(),
RefundPreference: $("#sltRefundPreference").val()
},
function(data){
returnValue = JSON.parse(data);
if(returnValue["data"] == 1){
window.location.href = returnValue["url"];
}
else{
ShowError(returnValue["msg"]);
}
}
);
}
}
Was ich tun muß, ist die eingegebene Zeit in GMT + 1 (oder vorzugsweise GMT + 2 im Sommer) ändern Sie die Zeit, um unser anderes System verwendet entsprechen.
ich mit MomentJS Zeitzone verstehen können Sie ein Datum für bestimmte Zeitzone drehen, etwa so:
var newYork = moment.tz("2014-06-01 12:00", "America/New_York");
newYork.format(); // 2014-06-01T12:00:00-04:00
Obwohl ich das verstehe nicht viel. Es konvertiert es von was (dh GMT + 1) zu New_York?
Kurz gesagt, wie konvertiere ich eine vom Benutzer eingegebene Zeit von Ortszeit in GMT + 1 (oder im Sommer GMT + 2, wenn möglich), dann teilen Sie sie gegen die AJAX-Funktion?
Vielen Dank im Voraus.
Was meinst du mit "oder im Sommer GMT + 2 wenn möglich"? – quirimmo
Wenn die Uhren eine Stunde weitergehen, wenn wir von GMT + 1 zu GMT + 2 wechseln. –
Diese Änderung ist implizit. Wenn die Uhren eine Stunde vorrücken, gehen sie in der ganzen Welt voran. Wenn Sie also ein aktuelles Datum mit einer Zeitzone abrufen und es in eine andere Zeitzone konvertieren, bringen sie diese Änderung bereits zurück – quirimmo