JS生成年月组合下拉框
<select name="F_Period">
<option value="">请选择时间段
<option value="">2007年05月
<option value="">2007年06月
<option value="">2007年07月
<option value="">2007年08月
<option value="">2007年09月
<option value="">2007年10月
<option value="">2007年11月
<option value="">2007年12月
<option value="">2008年01月
<option value="">2008年02月
<option value="">2008年03月
<option value="">2008年04月
<option selected value="">2008年05月
<option value="">2008年06月
<option value="">2008年07月
<option value="">2008年08月
<option value="">2008年09月
<option value="">2008年10月
<option value="">2008年11月
<option value="">2008年12月
<option value="">2009年01月
<option value="">2009年02月
<option value="">2009年03月
<option value="">2009年04月
<option value="">2009年05月</select>
如上所示,用JS生成当前月份前后十个月的日期选择,默认为当前月。
请问如何实现?
[解决办法]
var Span=10; document.write("<select name='F_Period'>"); document.write("<option>请选择时间段</option>"); var NowDate=new Date(); var StartDate=new Date(); var EndDate=new Date(); StartDate.setMonth(StartDate.getMonth()-Span); EndDate.setMonth(EndDate.getMonth()+Span+1); var Month,year; for(var d=StartDate;d<EndDate;d.setMonth(d.getMonth()+1)) { Month=d.getMonth(); year=d.getFullYear(); if(NowDate.getMonth()==Month&&d.getFullYear()==year) document.write("<option value='' selected>"+year+"年"+((Month+1)<10?"0"+(Month+1):(Month+1))+"月</option>"); else document.write("<option value=''>"+year+"年"+((Month+1)<10?"0"+(Month+1):(Month+1))+"月</option>"); } document.write("</select>");
[解决办法]
4楼正解。
找当当前日期的月份,然后 前后+10个月。