ユーザーが選択した2つの日付がJavaScriptで同じかどうかを調べる必要があります。日付は文字列( "xx/xx/xxxx")でこの関数に渡されます。これが必要なすべての粒度です。
ここに私のコードがあります:
var valid = true;
var d1 = new Date($('#datein').val());
var d2 = new Date($('#dateout').val());
alert(d1+"\n"+d2);
if(d1 > d2) {
alert("Your check out date must be after your check in date.");
valid = false;
} else if(d1 == d2) {
alert("You cannot check out on the same day you check in.");
valid = false;
}
日付をオブジェクトに変換した後のJavaScriptアラートは次のようになります。
2011年1月25日火曜日00:00:00 GMT-0800(太平洋標準時)
2011年1月25日火曜日00:00:00 GMT-0800(太平洋標準時)
日付1が日付2よりも大きいかどうかを判断するテストが機能します。ただし、==または===演算子を使用しても、validがfalseに変更されることはありません。
getTime()
メソッドを使用します。日付の数値をチェックし、大小チェックと等しいチェックの両方で機能します。
編集:
if (d1.getTime() === d2.getTime())
getTime()
を呼び出したくない場合は、これを試してください:
(a >= b && a <= b)
_var d1 = new Date($('#datein').val());
var d2 = new Date($('#dateout').val());
_
2つの簡単な方法を使用して同等性を確認する
if( d1.toString() === d2.toString())
if( +d1 === +d2)