首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

列表中判断那个月有几天的有关问题!帮忙看看这个代码错在那了

2012-02-24 
列表中判断那个月有几天的问题!各位大哥,帮忙看看这个代码错在那了!formid form1 name form1 metho

列表中判断那个月有几天的问题!各位大哥,帮忙看看这个代码错在那了!


<form   id= "form1 "   name= "form1 "   method= "post "   action= " ">
    <table   width= "200 "   border= "1 "   align= "center ">
        <tr>
            <td>
                <select   name= "select "   onchange= "estimation() ">
<script   language= "javascript ">
    var   time=new   Date();
    var   year=time.getYear();
    var   len=50;
    var   lens=year-len;
    document.form1.select.length=len;
    for(i=0;i <len;i++)
    {
          document.form1.select.options[i].text=lens+i+1;
  document.form1.select.options[i].value=lens+i+1;
    }
</script>
                </select>

            </td>
            <td> 年 </td>
            <td>
                <select   name= "select2 "   onchange= "estimation() ">
<script>
                    document.form1.select2.length=12;
for(j=0;j <12;j++)
{
      document.form1.select2.options[j].text=j+1;
      document.form1.select2.options[j].value=j+1;
}
</script>
                </select>
            </td>
            <td> 月 </td>
            <td> <select   name= "select3 ">
    <script   language= "javascript ">
        function   estimation()
{
    var   years=document.form1.select.text;
    var   months=document.form1.select2.text;
    if(months==4||months==6||months==9||months==11)
    {
          document.form1.select3.length=30;
          for(m=0;m <30;m++)
  {
        document.form1.select3.options[m].text=m+1;
document.form1.select3.options[m].value=m+1;
  }
    }

  else   if(months==1||months==3||months==5||months==7||months==8||months==10||months==12)
    {
            document.form1.select3.length=31;
            for(k=0;k <31;k++)
            {
                document.form1.select3.options[k].text=k+1;
                document.form1.select3.options[k].value=k+1;
            }
    }
  else   if(months==2&&((years%4==0&&years%100!=0)||(years%100==0&&years%400!=0)))
          {


      document.form1.select3.text=29;
  }
    else   document.form1.select3.text=28;
}    
    </script>
            </select> </td>
            <td> 日 </td>
        </tr>
    </table>
</form>

[解决办法]
用Date操作就行了.
<form id= "form1 " name= "form1 " method= "post " action= " ">
<table width= "200 " border= "1 " align= "center ">
<tr>
<td>
<select name= "select " onchange= "estimation() ">
<script language= "javascript ">
var time=new Date();
var year=time.getYear();
var len=50;
var lens=year-len;
document.form1.select.length=len;
for(i=0;i <len;i++)
{
document.form1.select.options[i].text=lens+i+1;
document.form1.select.options[i].value=lens+i+1;
}
</script>
</select>

</td>
<td> 年 </td>
<td>
<select name= "select2 " onchange= "estimation() ">
<script>
document.form1.select2.length=12;
for(j=0;j <12;j++)
{
document.form1.select2.options[j].text=j+1;
document.form1.select2.options[j].value=j+1;
}
</script>
</select>
</td>
<td> 月 </td>
<td> <select name= "select3 "> </select> </td>
<td> 日 </td>
</tr>
</table>
</form>
<script language= "javascript ">
function estimation()
{
var years=document.form1.select.options[document.form1.select.selectedIndex].value;
var months=document.form1.select2.options[document.form1.select2.selectedIndex].value;
years = parseInt(years);
months = parseInt(months)-1;
var dt = new Date(years, months+1, 1-1);
var days = dt.getDate();
var obj = document.form1.select3;
obj.innerHTML = " ";
var opt;
for(var i=1;i <=days;i++){
opt = new Option(i,i);
obj.add(opt);
}
}
estimation();
</script>

热点排行