2011-07-18 5 views
0

選択した年と月に応じて日付リストを再投入するドロップダウンスタイルの日付セレクタを追加したいと思います。 2008年2月2日は29日、4月は30日、6日は31日など...どのように私はjavascriptを使ってこれを行うことができますか?ウェブページ上の日付を選択するためのYYYY、MM、DDドロップダウンリストを追加

+0

カレンダーような? – Joe

+0

はい、生年月日を選択してください... – nilakshdas

答えて

0

HTML

を使用することをお勧めします

http://javascript.internet.com/forms/date-selection-form.html

を助けるかもしれません

<select name="" id="year"> 
    <option value="2016">2016</option> 
    <option value="2015">2015</option> 
    <option value="2014">2014</option> 
    <option value="2013">2013</option> 
    <option value="2012">2012</option> 
</select> 
<select name="" id="month"> 
    <option value="0">January</option> 
    <option value="1">February</option> 
    <option value="2">March</option> 
    <option value="3">April</option> 
    <option value="4">May</option> 
    <option value="5">June</option> 
    <option value="6">July</option> 
    <option value="7">August</option> 
    <option value="8">September</option> 
    <option value="9">October</option> 
    <option value="10">Novenmer</option> 
    <option value="11">December</option> 
</select> 
<select name="" id="day"> 

</select>  

SCRIPT

<script> 
     $(document).ready(function(){ 

      dpick('#year','#month','#day',1); 
     }); 

     function dpick(year,month,day,td){ 
      if(td==1){ 
       var today = new Date(); 
       $(year).val(today.getFullYear()); 
       $(month).val(today.getMonth()); 
      } 
      $(year).change(function(){ 
       dpick(year,month,day); 
      }); 
      $(month).change(function(){ 
       dpick(year,month,day); 
      }); 
      var month_val = $(month).val(); 
      var i=0; 
      $(day).empty(); 
      if(month_val=="1"){ 
       if($(year).val()%4 == 0){ 
        for(i=1;i<=29;i++){ 
         $(day).append($("<option></option>").attr("value", i).text(i)); 
        } 
       }else{ 
        for(i=1;i<=28;i++){ 
         $(day).append($("<option></option>").attr("value", i).text(i)); 
        } 
       } 
      } 
      else if(month_val=="8" || month_val=="3" || month_val=="5" || month_val=="10"){ 
       for(i=1;i<=30;i++){ 
        $(day).append($("<option></option>").attr("value", i).text(i)); 
       } 
      } 
      else{ 
       for(i=1;i<=31;i++){ 
        $(day).append($("<option></option>").attr("value", i).text(i)); 
       } 
      } 
      if(td==1){ 
       $(day).val(today.getDate()); 
      } 
     } 
    </script> 
+0

インデントエラーが少しあります。 – horcrux

関連する問題