必要に応じて日付をフォーマットするための JavaScript コードを作成しようとしていますが、Firefox で機能させるのに問題があります (Chrome では正常に機能しています)。
私がフォームに持っている入力は05/01/13
(mm/dd/yy) で、2013-05-01
(yyyy/mm/dd) が必要です。
そのために、私がしたことは次のようなものです:
var formDate = document.getElementById("start").value;
var myDate = new Date(formDate);
var startDate = new Date();
startDate.setMonth(myDate.getMonth() + 1);
startDate.setFullYear(myDate.getFullYear());
var FormattedDate = startDate.getFullYear() + "-" + ((startDate.getMonth() <= 10) ? "0" : "") + startDate.getMonth() + "-01"; // the day is always 01
alert(FormattedDate);
こちらの両方のブラウザーで試すことができます: http://jsfiddle.net/j4BLH/
Google Chrome では、このコードは2013-05-01
5 月の例ですが、Firefox では1913-05-01
.
私は次のようなものを書くことができたことを知って"20" + startDate.getYear()
いますが、なぜ結果が Chrome と Firefox で異なるのか疑問に思っていました。そして、私がここに貼り付けたコードのより良い書き方があれば、教えてください :)
ありがとう !