javascript検証日付の有効性、二つの日付の大きさの比較
3678 ワード
二つ目の日付が最初の日付より大きいと判断します.
どのようにスクリプトでユーザが入力した文字列が次の時間フォーマットであるかを判定しますか? ユーザーの入力がこのフォーマットであることを保証しなければなりません.例えば、月は12以上ではありません.また、ユーザーが2つ入力する必要があります.そして、後者は前の日より遅くなります.JAVSCRIPTだけ使えます.詳細に答えてください.
//ここでは正規表現でフォーマットを判断してから各時間フィールドの内容を抽出するように押してください.
<span style="color:#000000;">
window.onload </span>= <span style="color:#0000ff;">function</span><span style="color:#000000;">()
{
</span><span style="color:#008000;">//</span><span style="color:#008000;"> js html , js , html 。</span>
<span style="color:#000000;">
document.getElementById(</span>"frm1").onsubmit = <span style="color:#0000ff;">function</span><span style="color:#000000;">(){<br><br></span>
<span style="color:#0000ff;"> var</span> d1 = <span style="color:#0000ff;">this</span><span style="color:#000000;">.d1.value;
</span><span style="color:#0000ff;"> var</span> d2 = <span style="color:#0000ff;">this</span><span style="color:#000000;">.d2.value;
</span><span style="color:#0000ff;"> if</span>(!verifyDate (d1)) {alert(" ");<span style="color:#0000ff;">return</span> <span style="color:#0000ff;">false</span><span style="color:#000000;">;}
</span><span style="color:#0000ff;"> if</span>(!verifyDate (d2)) {alert(" ");<span style="color:#0000ff;">return</span> <span style="color:#0000ff;">false</span><span style="color:#000000;">;}
</span><span style="color:#0000ff;"> if</span>(!compareDate(d1,d2)) {alert(" ");<span style="color:#0000ff;">return</span> <span style="color:#0000ff;">false</span><span style="color:#000000;">;}
};
}
</span><span style="color:#0000ff;">function</span><span style="color:#000000;"> compareDate(d1,d2)
{
</span><span style="color:#0000ff;"> var</span> arrayD1 = d1.split("-"<span style="color:#000000;">);
</span><span style="color:#0000ff;"> var</span> date1 = <span style="color:#0000ff;">new</span> Date(arrayD1[0],arrayD1[1],arrayD1[2<span style="color:#000000;">]);
</span><span style="color:#0000ff;"> var</span> arrayD2 = d2.split("-"<span style="color:#000000;">);
</span><span style="color:#0000ff;"> var</span> date2 = <span style="color:#0000ff;">new</span> Date(arrayD2[0],arrayD2[1],arrayD2[2<span style="color:#000000;">]);
</span><span style="color:#0000ff;"> if</span>(date1 > date2) <span style="color:#0000ff;">return</span> <span style="color:#0000ff;">false</span><span style="color:#000000;">;
</span><span style="color:#0000ff;"> return</span> <span style="color:#0000ff;">true</span><span style="color:#000000;">;
}
</span><span style="color:#0000ff;">function</span><span style="color:#000000;"> verifyDate(d)
{
</span><span style="color:#0000ff;"> var</span> datePattern = /^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d|3[0-1])$/<span style="color:#000000;">;
</span><span style="color:#0000ff;"> return</span><span style="color:#000000;"> datePattern.test(d);
}
</span>
転載先:https://www.cnblogs.com/raker/p/3273128.html