与えられた日にちが存在するかチェック

  1. <!DOCTYPE html>
  2. <html lang="ja">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>与えられた日にちが存在するかチェック</title>
  6. <body>
  7. <h1>与えられた日にちが存在するかチェック</h1>
  8. <p>
  9. たとえば「6月31日」とか存在しない日を入力されたらエラーにしたい。<br />
  10. 他に良い方法があるか分からないけど…とりあえずDate()の結果と比較する。</p>
  11. <script type="text/javascript">
  12.   function checkInputDate(y, m, d)
  13.   {
  14.     tmpDate = new Date(y + "/" + m + "/" + d);
  15.     chgDate = tmpDate.getFullYear() + "/" +  (tmpDate.getMonth() + 1) + "/" + tmpDate.getDate();
  16.     oriDate = parseFloat(y) + "/" + parseFloat(m) + "/" + parseFloat(d);
  17.     result = "";
  18.     if (chgDate == oriDate)
  19.     {
  20.       result += "ok「: " + chgDate + "」";
  21.     }
  22.     else
  23.     {
  24.       result += "NG「chgDate: " + chgDate;
  25.       result += "」と「";
  26.       result += "oriDate: " + oriDate;
  27.       result += "」";
  28.     }
  29.     return result;
  30.   }
  31.   document.write('y=2012, m=6, d=6:<br />');
  32.   document.write(checkInputDate(2012, 6, 6));
  33.   document.write('<br /><br />');
  34.   document.write('y="2012", m="6", d="7":<br />');
  35.   document.write(checkInputDate("2012", "6", "7"));
  36.   document.write('<br /><br />');
  37.   document.write('y="2012", m="06", d="07":<br />');
  38.   document.write(checkInputDate("2012", "06", "07"));
  39.   document.write('<br /><br />');
  40.   document.write('y=2012, m=6, d=50:<br />');
  41.   document.write(checkInputDate(2012, 6, 50));
  42.   document.write('<br /><br />');
  43.   document.write('y="2012", m="6", d="50":<br />');
  44.   document.write(checkInputDate("2012", "6", "50"));
  45.   document.write('<br /><br />');
  46.   
  47.   document.write('y="2012", m="6", d="0":<br />');
  48.   document.write(checkInputDate("2012", "6", "0"));
  49.   document.write('<br /><br />');
  50. </script>
  51. <div style="font-size:10pt;text-align:right;margin-top:0.5em;">
  52. <a href="//tips.recatnap.info/" target="_top">PCスキルの小技・忘却防止メモ</a> -
  53. <a href="//tips.recatnap.info/wiki/" target="_top">PCスキルの小技・忘却防止メモのまとめ(wiki)</a>
  54. </div>
  55. <div style="font-size:10pt;text-align:center;margin-top:0.5em;padding:0.5em;border-top:1px solid #ccc;">
  56. Copyright &copy; 2009 by PCスキルの小技・忘却防止メモ. All rights reserved.
  57. </div>
  58. </body>
  59. </html>