zoukankan      html  css  js  c++  java
  • JS 年月日连动

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
     <head>
      <title> New Document </title>
      <meta name="Generator" content="EditPlus">
      <meta name="Author" content="">
      <meta name="Keywords" content="">
      <meta name="Description" content="">
      <script language="javascript">
      function   YYYYMMDDstart()  
      {  
              MonHead   =   [31,   28,   31,   30,   31,   30,   31,   31,   30,   31,   30,   31];  
       
              //先给年下拉框赋内容  
              var   y       =   new   Date().getFullYear();  
              for   (var   i   =   (y-30);   i   <   (y-10);   i++)   //以今年为准,显示前30年之后的20年  
                      document.form1.YYYY.options.add(new   Option(""+i+"",   i));  
       
              //赋月份的下拉框  
              for   (var   i   =   1;   i   <   13;   i++)  
                      document.form1.MM.options.add(new   Option(""+i+"",   i));  
       
    //          document.form1.YYYY.value   =   y;   //获取到当前年份
    //          document.form1.MM.value   =   new   Date().getMonth()   +   1;   获取到当前月份
              var   n   =   MonHead[new   Date().getMonth()];  
              if   (new   Date().getMonth()   ==1   &&   IsPinYear(YYYYvalue))   n++;  
                      writeDay(n);   //赋日期下拉框Author:meizz  
    //          document.form1.DD.value   =   new   Date().getDate();   获取到当前日期
      }  
      function   YYYYDD(str)   //年发生变化时日期发生变化(主要是判断闰平年)  
      {  
              var   MMvalue   =   document.form1.MM.options[document.form1.MM.selectedIndex].value;  
              if   (MMvalue   ==   ""){   var   e   =   document.form1.DD;   optionsClear(e);   return;}  
              var   n   =   MonHead[MMvalue   -   1];  
              if   (MMvalue   ==2   &&   IsPinYear(str))   n++;  
                      writeDay(n)  
      }  
      function   MMDD(str)     //月发生变化时日期联动  
      {  
              var   YYYYvalue   =   document.form1.YYYY.options[document.form1.YYYY.selectedIndex].value;  
              if   (YYYYvalue   ==   ""){   var   e   =   document.form1.DD;   optionsClear(e);   return;}  
              var   n   =   MonHead[str   -   1];  
              if   (str   ==2   &&   IsPinYear(YYYYvalue))   n++;  
                      writeDay(n)  
      }  
      function   writeDay(n)     //据条件写日期的下拉框  
      {  
              var   e   =   document.form1.DD;   optionsClear(e);  
              for   (var   i=1;   i<(n+1);   i++)  
                      e.options.add(new   Option(""+i+"",   i));  
      }  
      function   IsPinYear(year)//判断是否闰平年  
      {       return(0   ==   year%4   &&   (year%100   !=0   ||   year%400   ==   0));}  
      function   optionsClear(e)  
      {  
              for   (var   i=e.options.length;   i>0;   i--)  
                      e.remove(i);  
      }
      </script>
     </head>

     <body onload="YYYYMMDDstart()">
     <form name="form1">
      <select name="YYYY" onchange="YYYYDD(this.value)">
                    <option value="0">选择年</option>
                </select>
                <select name="MM" onchange="MMDD(this.value)">
                    <option value="0">选择月</option>
                </select>
                <select name="DD">
                    <option value="0">选择日</option>
                </select>
       </form>
     </body>
    </html>

  • 相关阅读:
    Attributes.Add用途与用法
    Reapter控件中更换Td背景色
    SQL SERVER查询时间条件式写法
    C# Cache何时使用及使用方法
    C#中Cache用法
    用sql语句将两个时间相减,得到时间距的DateDiff()函数
    HTML5 带进度条的异步文件上传原理
    Node环境Grunt开发流
    HTML5的Web SQL Databases(html5 本地数据库)API
    移动端范围拖动选择效果
  • 原文地址:https://www.cnblogs.com/zyosingan/p/1208662.html
Copyright © 2011-2022 走看看