選択した月の最初の日付を表示したいのですが、日付のフォーマットに正しいフォーマットが表示されません。jQuery、フォーマットの日付に正しいフォーマットが表示されない
私はこの2017年1月11日のようにそれを表示したいのですが、それはこの
のように表示されます水曜日2017年11月1日00:00:00 GMT + 0100(CET)
Select a Date: <input type="date" id="theDate" onmouseout="getTheDays()"/>
<p>First Day of the Month: <label id="fday"></label></p>
<p>Last Day of the Month: <label id="lday"></label></p>
<script>
function getTheDays() {
var dt = new Date($('#theDate').val());
// GET THE MONTH AND YEAR OF THE SELECTED DATE.
var month = dt.getMonth(),
year = dt.getFullYear();
// GET THE FIRST AND LAST DATE OF THE MONTH.
var FirstDay = new Date(year, month, 1);
var LastDay = new Date(year, month + 1, 0);
// FINALLY, GET THE DAY.
var weekday = new Array();
weekday[0] = "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";
if (typeof weekday[FirstDay.getDay()] != 'undefined') { // CHECK FOR 'undefined'.
$('#fday').html(FirstDay.toString('dd-MM-yy'));
}
else {
$('#fday').text('');
$('#lday').text('');
}
}
</script>
@Jacobは素晴らしい答えを与えましたが、日付オブジェクトの "toString"タイプのメソッドにはパラメータがないことを知っておく必要があります。それがあなたの問題でした。 –