您的位置:首页 > Web前端 > JavaScript

Javascript实现日期的联动选择代码

2008-09-11 13:54 956 查看
<html>
<body>
<form>
<select id=year onchange=toDate()>
<script>for(i=1970;i<=2010;i++)document.write("<option>"+i+"</option>")</script>
</select>
<select id=month onchange=toDate()>
<script>for(i=1;i<=12;i++)document.write("<option>"+i+"</option>")</script>
</select>
<select id=day onchange=toDay()></select>
<input name=weekday>
</form>
</body>
<script>
var arr="日一二三四五六".split("")
function toDate(){
   
with(document.all){
       
vYear=parseInt(year.options[year.selectedIndex].text)
       
vMonth=parseInt(month.options[month.selectedIndex].text)
       
day.length=0;
       
for(i=0;i <(new Date(vYear,vMonth,0)).getDate();i++)
   
{
       
day.options[day.length++].value=day.length;day.options[day.length-1].text=day.length;}
       
}
       
toDay();
}
function toDay(){
   
vDay=parseInt(document.all.day.options[document.all.day.selectedIndex].value)
   
document.all( "weekday").value="星期"+arr[new Date(vYear,vMonth-1,vDay).getDay()]
}
window.onload=toDate;
</script>
</html>

   提示:您可以先修改部分代码再运行

<html>
<body>
<form>

<select id=year onchange=toDate(this,document.getElementById('month'),document.getElementById('day'),1)>
<option value="-1">YYYY</option>
<script>for(i=1970;i<=2010;i++)document.write("<option value=/"" + i + "/" " + (i==2008?" selected ":"") + ">"+i+"</option>")</script>
</select>
<select id=month onchange=toDate(document.getElementById('year'),this,document.getElementById('day'),1)>
<option value="-1">MM</option>
<script>for(i=1;i<=12;i++)document.write("<option value=/"" + i + "/"" + (i==9?" selected ":"") + ">"+i+"</option>")</script>
</select>
<select id=day>
<option value="-1">DD</option>
</select>
</form>
</body>
<script>
function toDate(objYear,objMonth,objDay,dayNum){
if (objYear.value=='-1' || objMonth.value=='-1'){
objMonth.options[0].selected=true;
objDay.options[0].selected=true;
return;
}
with(document.all){
vYear=parseInt(objYear.options[objYear.selectedIndex].text)
vMonth=parseInt(objMonth.options[objMonth.selectedIndex].text)
objDay.length=1;
for(i=0;i<(new Date(vYear,vMonth,0)).getDate();i++){
objDay.options[objDay.length++].value=objDay.length;objDay.options[objDay.length-1].text=objDay.length-1;
}
objDay.options[dayNum].selected=true;
}
}
toDate(document.getElementById("year"),document.getElementById("month"),document.getElementById("day"),3);
</script>
</html>

   提示:您可以先修改部分代码再运行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息