组合日期,从月份和年份列表获取天数

时间:2015-10-26 07:19:00

标签: javascript jquery momentjs

我有没有办法列出从1991年到现在(2015年)的年份,既不使用香草js也不使用momentjs?到目前为止,我只能检索当前所选月份的天数列表。任何帮助,想法,建议,线索?



$(document).ready(function(){
  $("select[name='months']").change(function(){
    gg($("select[name='years']").val(),$(this).val());
  });
  
});

function gg(year, month) {
//  var names = [ 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat' ];
  var date = new Date(year, month-1, 1);
  var result = [];
  while (date.getMonth() == month-1) {
    result.push(date.getDate());
    date.setDate(date.getDate()+1);
  }
  $.each(result, function(index, value){
     $("select[name='days']").append('<option name="' + value + '">' + value + '</option>'); 
  });
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>



<label>Days</label>
<select name="days">
  
</select>

<label>Months</label>
<select name="months">
  <option value="01" selected>January</option>
  <option value="02">February</option>
  <option value="03">March</option>
  <option value="04">April</option>
  <option value="05">May</option>
  <option value="06">June</option>
  <option value="07">July</option>
  <option value="08">August</option>
  <option value="09">September</option>
  <option value="10">October</option>
  <option value="11">November</option>
  <option value="12">December</option>
</select>

<label>Year</label>
<select name="years">
  <option value="2015" selected>2015</option>
  <option value="2014">2014</option>
  <option value="2013">2013</option>
  <option value="2012">2012</option>
  <option value="2011">2011</option>
  <option value="2010">2010</option>
  <option value="2009">2009</option>
  <option value="2008">2008</option>
  <option value="2007">2007</option>
  <option value="2006">2006</option>
  <option value="2005">2005</option>
  <option value="2004">2004</option>
  <option value="2003">2003</option>
  <option value="2002">2002</option>
  <option value="2001">2001</option>
  <option value="2000">2000</option>
  <option value="1999">1999</option>
  <option value="1998">1998</option>
  <option value="1997">1997</option>
  <option value="1996">1996</option>
  <option value="1995">1995</option>
  <option value="1994">1994</option>
  <option value="1993">1993</option>
  <option value="1992">1990</option>
  <option value="1991">1991</option>
  
</select>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

如果您的年份选择列表从一开始就是空的

<select name="years"></select>

然后您可以将其添加到$(document).ready()功能

var $years = $("select[name='years']");
for(var i = 1991; i <= 2015; i++) {
    $years.prepend("<option value='" + i + "'>" + i + "</option>");
}