0

2 つの異なる日付の使用の違いを見つけることに関して、ここでいくつかの異なる質問を見てきました。

私の質問はParse ONLY a time string with DateJS に似ています。

私は基本的に2つの時間入力を持っています:

<input id="start_time" type="text"> <input id="end_time" type="text">

これらの形式は常に次のようになります:07:15 AMまたは08:30 AM

基本的に、私がやろうとしているのは、start_timeが より大きくならないようにすることend_timeです。

DateJS を使用して日付を解析しようとしましたが、次のように返されますnull

Date.parseExact("03:15 PM", "HH:mm");    <--- returns null

2 つの入力フィールドを (DateJS などを使用して) 比較して、start_time が end_time よりも大きくないことを確認するにはどうすればよいですか?

どんな助けでも素晴らしいでしょう。

4

4 に答える 4

4

解析に使用している形式に AM/PM フィールドを追加する必要があります。使ってみて

HH:mm tt

それ以外の

HH:mm
于 2013-04-16T14:44:00.203 に答える
1

質問に正確に答えているわけではありませんが、DateJS は少し時代遅れに見えます。これを行うことができるMoment.jsをご覧になることをお勧めします。

moment("03:15 PM", "hh:mm A").isAfter(moment("03:05 PM", "hh:mm A"));
// false
于 2013-04-16T14:52:17.207 に答える
0

@matthewtole によって提示された形式のリビジョンで使用Date.parseExactできます。または、「Date.parse」も使用できるはずです。

Date.parseExactの方がパフォーマンスは向上しますが、2 つの値を解析するだけであれば、 のパフォーマンスの向上Date.parseExactはおそらく大きな違いはありません。

この.isBefore()関数を使用して、ある日付が他の日付よりも前に発生しているかどうかを確認することもできます。

var d1 = Date.parse("07:15 AM");
var d2 = Date.parse("08:30 AM");

d1.isBefore(d2); // true

お役に立てれば

于 2013-04-16T22:04:38.673 に答える