<script language="javascript">
function today(){

var  Month = document.getElementById("Month");
for (var i=1; i<13; i++)
{ var selector = i;
var Option = document.createElement("option");
Option.text = selector;
Option.value = selector;
  myForm.Month.add(Option);
  }
 
}
</script>
<body bottomMargin="0" leftMargin="0" topMargin="0" onload="today();" rightMargin="0">
<form id="myForm" runat="server">
<table width=100%>
<tr><td>
<select id="Month" name="Month">
</select></td></tr>
</table>
</form>
</body>以上代码没有问题!
2003+IE6.0

解决方案 »

  1.   

    var  Day = document.getElementById("Day");
    根本没这个对象啊
      

  2.   

    我忘写了,可以不要它,不过Month也不行啊!
      

  3.   

    就是因为DAY对象不存在,所以导致这个错误了.
      

  4.   

    是myForm.Month.add这个地方对象不存在。
      

  5.   

    var  Day = document.getElementById("Day");
    这一行就在myForm.Month.add下面.系统提示的行数有时候并不是很精确的,比如有些时候你某个地方少个;或} 系统并不会在那行提示错误,反而会在其他行报错.
      

  6.   

    我本来程序中有<select id=Day name=Day></select>的我这儿没写出来,它提示的是"myForm.Month"为空或不是对象。
      

  7.   

    <%@ Page language="c#" Codebehind="Update.aspx.cs" AutoEventWireup="false" Inherits="F1.User.Update" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
    <HTML>
    <HEAD>
    <title>个人设置</title>
    <meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
    <meta content="C#" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <LINK href="../main.css" type="text/css" rel="stylesheet">
    <script src="/Common/F1.js"></script>
    <script language="javascript">
    function today(){
    var today = new Date();
    var Year = today.getFullYear();
    var Month = today.getMonth();
    var Day = today.getDate();

    var  Month = document.getElementById("Month");
    for (var i=1; i<13; i++)
    { var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Month.add(Option);  
      }
     
     


    var  Day = document.getElementById("Day");
    for (var i=1; i<32; i++)
    { var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option);  
      }
     
     
      myForm.Month.value=<%=iMonth%>;
      myForm.Day.value=<%=iDay%>;
    var iyear=<%=iYear%>;
    if(iyear=="9999"||iyear==0)
    myForm.Year.value="";
    else
    myForm.Year.value=iyear;







    }

    function Select(){

    var  day = document.all.Month.value;
    var  Day = document.getElementById("Day");

    if(day==1||day==3||day==5||day==7||day==8||day==10||day==12)
    {
    Day.innerHTML="";
    for (var i=1; i<32; i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option);    
      }
    }
    else if(day==4||day==6||day==9||day==11)
    {
    Day.innerHTML="";
    for (var i=1; i<31; i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option); 
       
      }
    }
    else
    {
    Day.innerHTML="";
    var iyear=myForm.Year.value;
    if((iyear%4==0)&&(iyear%100!=0)||(iyear%400==0))
    for(var i=1;i<30;i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
    Day.add(Option);
    }

    else
    {
    Day.innerHTML="";
    for(var i=1;i<29;i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
    Day.add(Option);

    }
    }
    }
    }
    </script>
    </HEAD>
    <body bottomMargin="0" leftMargin="0" topMargin="0" onload="today();" rightMargin="0">
    <table height="100%" cellSpacing="0" cellPadding="0" width="100%" align="center" border="0">
    <tr>
    <td vAlign="top" align="left" background="/images/manage_title_bk.gif" height="60">
    <table cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr>
    <td><IMG src="images/manage_title.gif"></td>
    <td vAlign="top" align="right">
    <table cellSpacing="10" cellPadding="0" border="0">
    <tr>
    <td width="35"><A class="manage_link_close" href="javascript:doOK();">关闭</A></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td height="18">&nbsp;</td>
    </tr>
    <tr>
    <td vAlign="top" align="center">
    <table cellSpacing="0" cellPadding="0" width="94%" align="center" border="0">
    <tr>
    <td align="left">
    <table height="21" cellSpacing="0" cellPadding="0" background="../images/manage_sheet_bk.gif"
    border="0">
    <tr>
    <td bgColor="#ff6600">&nbsp;&nbsp;<span class="textWithe">修改注册资料</span>&nbsp;&nbsp;</td>
    <td width="1" bgColor="#ffffff"></td>
    <td>&nbsp;&nbsp;<A class="manage_sheet" href="PasswordChange.aspx">修改密码</A>&nbsp;&nbsp;</td>
    <td width="1" bgColor="#ffffff"></td>
    <td>&nbsp;&nbsp;<A class="manage_sheet" href="PasswordProtect.aspx">申请密码保护</A>&nbsp;&nbsp;</td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    <table cellSpacing="1" cellPadding="0" width="94%" align="center" bgColor="#ff6600" border="0">
    <tr>
    <td bgColor="#ffffff">
    <table cellSpacing="0" cellPadding="0" border="0">
    <tr>
    <td>&nbsp;</td>
    </tr>
    <tr>
    <td width="12">&nbsp;</td>
    <td><IMG src="../images/manage_title_arrow.gif"></td>
    <td><strong>当前位置</strong>:个人设置&nbsp;&gt;&gt;&nbsp;修改用户个人资料
    </td>
    </tr>
    <tr>
    <td>&nbsp;</td>
    </tr>
    </table>
    <table cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr>
    <td bgColor="#ababab"><img height="1" alt="" src="" width="1" name=""></td>
    </tr>
    </table>
    <table cellSpacing="0" cellPadding="0" width="100%" bgColor="#f7f7f7">
    <tr>
    <td>
    <form id="myForm" onsubmit="return CheckForm();" method="post" encType="multipart/form-data"
    runat="server">
    <asp:panel id="PanelForm" runat="server">
    <TABLE cellSpacing="0" cellPadding="2" align="center" border="0">
    <TR>
    <TD width="100"><!-- 显示图标 --><%= PrintUserFace() %></TD>
    <TD vAlign="top"><!-- 上传图标 -->
    <TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
    <TR>
    <TD class="textOrange" vAlign="top" height="22">·用户名:<B>
    <asp:Label id="UserName" runat="server">UserName</asp:Label></B></TD>
    </TR>
    <TR>
    <TD height="30"><INPUT onclick="ChangeFacePanel(0);" type="radio" CHECKED value="0" name="FaceType">选择头像
    <INPUT onclick="ChangeFacePanel(1);" type="radio" value="1" name="FaceType">上传头像
    </TD>
    </TR>
    <TR>
    <TD>
      

  8.   

    我这下面3行注释掉了
    //myForm.Month.value=<%=iMonth%>;
    //myForm.Day.value=<%=iDay%>;
    //var iyear=<%=iYear%>;这样子程序是可以正常跑下去的
    说明你函数没问题。
    试试看把这3行这样写:
    myForm.Month.value="<%=iMonth%>";
    myForm.Day.value="<%=iDay%>";
    var iyear="<%=iYear%>";
    <HTML>
    <HEAD>
    <title>个人设置</title>
    <meta content="Microsoft Visual Studio 7.0" name="GENERATOR">
    <meta content="C#" name="CODE_LANGUAGE">
    <meta content="JavaScript" name="vs_defaultClientScript">
    <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <LINK href="../main.css" type="text/css" rel="stylesheet">

    <script language="javascript">
    function today(){
    var today = new Date();
    var Year = today.getFullYear();
    var Month = today.getMonth();
    var Day = today.getDate();

    var  Month = document.getElementById("Month");
    for (var i=1; i<13; i++)
    { var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Month.add(Option);  
      }
     
     


    var  Day = document.getElementById("Day");
    for (var i=1; i<32; i++)
    { var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option);  
      }
     
     
      //myForm.Month.value=<%=iMonth%>;
      //myForm.Day.value=<%=iDay%>;
    //var iyear=<%=iYear%>;
    var iyear;
    if(iyear=="9999"||iyear==0)
    myForm.Year.value="";
    else
    myForm.Year.value=iyear;







    }

    function Select(){

    var  day = document.all.Month.value;
    var  Day = document.getElementById("Day");

    if(day==1||day==3||day==5||day==7||day==8||day==10||day==12)
    {
    Day.innerHTML="";
    for (var i=1; i<32; i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option);    
      }
    }
    else if(day==4||day==6||day==9||day==11)
    {
    Day.innerHTML="";
    for (var i=1; i<31; i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
      Day.add(Option); 
       
      }
    }
    else
    {
    Day.innerHTML="";
    var iyear=myForm.Year.value;
    if((iyear%4==0)&&(iyear%100!=0)||(iyear%400==0))
    for(var i=1;i<30;i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
    Day.add(Option);
    }

    else
    {
    Day.innerHTML="";
    for(var i=1;i<29;i++)
    {
    var selector = i;
    var Option = document.createElement("option");
    Option.text = selector;
    Option.value = selector;
    Day.add(Option);

    }
    }
    }
    }
    </script>
    </HEAD>
    <body onload="javascript:today();">
        <table cellSpacing="1" cellPadding="0" width="94%" align="center" bgColor="#ff6600" border="0">
          <tr>
            <td bgColor="#ffffff">
              <table cellSpacing="0" cellPadding="0" width="100%" border="0">
                <tr>
                  <td bgColor="#ababab"><img height="1" alt="" src="" width="1" name=""></td>
                </tr>
              </table>
              <table cellSpacing="0" cellPadding="0" width="100%" bgColor="#f7f7f7">
                <tr>
                  <td>
                    <form id="myForm" onsubmit="return CheckForm();" method="post" encType="multipart/form-data"
    runat="server">
                      <asp:panel id="PanelForm" runat="server">
                        <TABLE cellSpacing="0" cellPadding="2" align="center" border="0">
                          <TR>
                            <TD width="100" class="textOrange" style="HEIGHT: 16px">
                            <TD style="HEIGHT: 16px"><INPUT id="Year" onkeydown="onlyNum();" type="text" maxLength="4" size="8" name="Year">
                                <SELECT id="Month" onchange="Select()" name="Month">
                                </SELECT>
                                <SELECT id="Day" name="Day">
                              </SELECT></TD>
                          </TR>
                        </TABLE>
                      </asp:panel>
                      <asp:panel id="PanelOK" runat="server"> </asp:panel>
                      <asp:panel id="PanelERR" runat="server"></asp:panel>
                  </form></td>
                </tr>
            </table></td>
          </tr>
        </table>
    </body>
    </HTML>
      

  9.   

    我都把那几行
    myForm.Month.value=<%=iMonth%>;
      myForm.Day.value=<%=iDay%>;
    var iyear=<%=iYear%>;
    if(iyear=="9999"||iyear==0)
    myForm.Year.value="";
    else
    myForm.Year.value=iyear;
    去掉了,还是什么“myForm.Month”不是对象,好象和onload()有关吧。
      

  10.   

    对不起,忘了说了。onload我也改过了
    <body onload="javascript:today();">
      

  11.   

    我就改了ONLOAD和注释了那3行,可以运行。但是我是把你的函数单独拿出来的。其他的部分我都丢弃了。就是我贴给你的那段代码。你运行下我给你的那段,可以的话就说明函数没问题的。
      

  12.   

    我找到原因了,是因为里面有个<asp:panel id="PanelForm" runat="server"> 。如果把<select id=month>放到它的外面就可以了。可是怎么解决呢,我不想放到外面啊。
      

  13.   

    晕。这个我没办法了。这个是不是.NET啊。我可没学过。:(