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