下面这款显示日历的JS代码,不知道哪里出错,显示的日历跟我们现在的日历日期不符合,找不到原因,请各位大大帮忙解决下,谢谢了。<table width="100%" border="0" cellspacing="0" cellpadding="0">
            <tr>
              <td align="center"><font color="#005894" style="font-size: 11pt"><b>财经日历</b></font><br />
                    <script language="JavaScript">
                        document.writeln("<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"180\">");
                        document.writeln("<tr><td id=cc>");
                        document.writeln("</td></tr></table>");
                        function RunNian(The_Year) {
                            if ((The_Year % 400 == 0) || ((The_Year % 4 == 0) && (The_Year % 100 != 0)))
                                return true;
                            else
                                return false;
                        }
                        function GetWeekday(The_Year, The_Month) {                            var Allday;
                            Allday = 0;
                            if (The_Year > 2000) {                                for (i = 2000; i < The_Year; i++)
                                    if (RunNian(i))
                                    Allday += 366;
                                else
                                    Allday += 365;
                                for (i = 2; i <= The_Month; i++) {
                                    switch (i) {
                                        case 2:
                                            if (RunNian(The_Year))
                                                Allday += 29;
                                            else
                                                Allday += 28;
                                            break;
                                        case 3: Allday += 31; break;
                                        case 4: Allday += 30; break;
                                        case 5: Allday += 31; break;
                                        case 6: Allday += 30; break;
                                        case 7: Allday += 31; break;
                                        case 8: Allday += 31; break;
                                        case 9: Allday += 30; break;
                                        case 10: Allday += 31; break;
                                        case 11: Allday += 30; break;
                                        case 12: Allday += 31; break;                                    }                                }
                            }                            return (Allday + 6) % 7;
                        }                        function chooseday(The_Year, The_Month, The_Day) {
                            var Firstday;
                            var completely_date;
                            if (The_Day != 0)
                                completely_date = The_Year + "-" + The_Month + "-" + The_Day;
                            else
                                completely_date = "No Choose";                            if (completely_date != 'No Choose') {
                                window.open("http://www.xxxxx.com/DataCenter/calendar.aspx?d=" + completely_date);
                            }
                            Firstday = GetWeekday(The_Year, The_Month);
                            ShowCalender(The_Year, The_Month, The_Day, Firstday);                        }                        function nextmonth(The_Year, The_Month) {
                            if (The_Month == 12)
                                chooseday(The_Year + 1, 1, 0);
                            else
                                chooseday(The_Year, The_Month + 1, 0);
                        }                        function prevmonth(The_Year, The_Month) {
                            if (The_Month == 1)
                                chooseday(The_Year - 1, 12, 0);
                            else
                                chooseday(The_Year, The_Month - 1, 0);
                        }                        function prevyear(The_Year, The_Month) {
                            chooseday(The_Year - 1, The_Month, 0);
                        }                        function nextyear(The_Year, The_Month) {
                            chooseday(The_Year + 1, The_Month, 0);
                        }                        function ShowCalender(The_Year, The_Month, The_Day, Firstday) {                            var showstr;
                            var Month_Day;
                            var ShowMonth;
                            var today;
                            today = new Date();                            switch (The_Month) {
                                case 1: ShowMonth = "January"; Month_Day = 31; break;
                                case 2:
                                    ShowMonth = "February";
                                    if (RunNian(The_Year))
                                        Month_Day = 29;
                                    else
                                        Month_Day = 28;
                                    break;
                                case 3: ShowMonth = "March"; Month_Day = 31; break;
                                case 4: ShowMonth = "April"; Month_Day = 30; break;
                                case 5: ShowMonth = "May"; Month_Day = 31; break;
                                case 6: ShowMonth = "June"; Month_Day = 30; break;
                                case 7: ShowMonth = "July"; Month_Day = 31; break;
                                case 8: ShowMonth = "August"; Month_Day = 31; break;
                                case 9: ShowMonth = "September"; Month_Day = 30; break;
                                case 10: ShowMonth = "October"; Month_Day = 31; break;
                                case 11: ShowMonth = "November"; Month_Day = 30; break;
                                case 12: ShowMonth = "December"; Month_Day = 31; break;                            }
                            showstr = "";
                            showstr = "<Table cellpadding=0 cellspacing=0 border=1 bordercolor=#D3E2EB width=95% height=158 align=center valign=top>";
                            showstr += "<tr><td width=0 style=&acute;cursor:hand&acute; onclick=prevyear(" + The_Year + "," + The_Month + ")>&lt;&lt;</td><td width=0>&nbsp;" + The_Year + "&nbsp;</td><td width=0 onclick=nextyear(" + The_Year + "," + The_Month + ") style=&acute;cursor:hand&acute;>&gt;&gt;</td><td width=0 style=&acute;cursor:hand&acute; onclick=prevmonth(" + The_Year + "," + The_Month + ")>&lt;&lt;</td><td width=100 align=center>" + ShowMonth + "</td><td width=0 onclick=nextmonth(" + The_Year + "," + The_Month + ") style=&acute;cursor:hand&acute;>&gt;&gt;</td></tr>";
                            showstr += "<tr><td align=center width=100% colspan=6>";
                            showstr += "<table cellpadding=0 cellspacing=0 border=1 bordercolor=#F3F7F8 width=100%>";
                            showstr += "<Tr align=center bgcolor=#ffffff> ";
                            showstr += "<td><strong><font color=#0000CC>日</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>一</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>二</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>三</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>四</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>五</font></strong></td>";
                            showstr += "<td><strong><font color=#0000CC>六</font></strong></td>";
                            showstr += "</Tr><tr>";                            for (i = 1; i <= Firstday; i++)
                                showstr += "<Td align=center >&nbsp;</Td>";                            for (i = 1; i <= Month_Day; i++) {
                                if ((The_Year == today.getYear()) && (The_Month == today.getMonth() + 1) && (i == today.getDate()))
                                    bgColor = "bgcolor=#FFCCCC";
                                //else
                                // bgColor = "#ffffff";                                if (The_Day == i) bgColor = "#DfDfff";
                                showstr += "<td align=center  style=\"cursor:hand;\" onclick=chooseday(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>";
                                Firstday = (Firstday + 1) % 7;
                                if ((Firstday == 0) && (i != Month_Day)) showstr += "</tr><tr>";
                            }
                            if (Firstday != 0) {
                                for (i = Firstday; i < 7; i++)
                                    showstr += "<td align=center >&nbsp;</td>";
                                showstr += "</tr>";
                            }                            showstr += "</tr></table></td></tr></table>";
                            cc.innerHTML = showstr;
                        }
</script>                    <script language="JavaScript">                        var The_Year, The_Day, The_Month;
                        var today;
                        var Firstday;
                        today = new Date();
                        The_Year = today.getYear();
                        The_Month = today.getMonth() + 1;
                        The_Day = today.getDate();
                        Firstday = GetWeekday(The_Year, The_Month);
                        ShowCalender(The_Year, The_Month, The_Day, Firstday);
</script>
  </div></td>
            </tr>
          </table>

解决方案 »

  1.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <META NAME="Generator" CONTENT="EditPlus">
      <META NAME="Author" CONTENT="">
      <META NAME="Keywords" CONTENT="">
      <META NAME="Description" CONTENT="">
     </HEAD> <BODY>
      <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
      <td align="center"><font color="#005894" style="font-size: 11pt"><b>财经日历</b></font><br />
      <script language="JavaScript">
      document.writeln("<table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"180\">");
      document.writeln("<tr><td id=cc>");
      document.writeln("</td></tr></table>");
      function RunNian(The_Year) {
      if ((The_Year % 400 == 0) || ((The_Year % 4 == 0) && (The_Year % 100 != 0)))
      return true;
      else
      return false;
      }
      function GetWeekday(The_Year, The_Month){
    var da=new Date();
    da.setFullYear(The_Year);
    da.setMonth(The_Month-1);
    da.setDate(1);
    return da.getDay();
      }
      /*function GetWeekday(The_Year, The_Month) {  var Allday;
      Allday = 0;
      if (The_Year > 2000) {  for (i = 2000; i < The_Year; i++)
      if (RunNian(i))
      Allday += 366;
      else
      Allday += 365;
      for (i = 2; i <= The_Month; i++) {
      switch (i) {
      case 2:
      if (RunNian(The_Year))
      Allday += 29;
      else
      Allday += 28;
      break;
      case 3: Allday += 31; break;
      case 4: Allday += 30; break;
      case 5: Allday += 31; break;
      case 6: Allday += 30; break;
      case 7: Allday += 31; break;
      case 8: Allday += 31; break;
      case 9: Allday += 30; break;
      case 10: Allday += 31; break;
      case 11: Allday += 30; break;
      case 12: Allday += 31; break;  }  }
      }  return (Allday + 6) % 7;
      }*/  function chooseday(The_Year, The_Month, The_Day) {
      var Firstday;
      var completely_date;
      if (The_Day != 0)
      completely_date = The_Year + "-" + The_Month + "-" + The_Day;
      else
      completely_date = "No Choose";  if (completely_date != 'No Choose') {
      window.open("http://www.xxxxx.com/DataCenter/calendar.aspx?d=" + completely_date);
      }
      Firstday = GetWeekday(The_Year, The_Month);
      ShowCalender(The_Year, The_Month, The_Day, Firstday);  }  function nextmonth(The_Year, The_Month) {
      if (The_Month == 12)
      chooseday(The_Year + 1, 1, 0);
      else
      chooseday(The_Year, The_Month + 1, 0);
      }  function prevmonth(The_Year, The_Month) {
      if (The_Month == 1)
      chooseday(The_Year - 1, 12, 0);
      else
      chooseday(The_Year, The_Month - 1, 0);
      }  function prevyear(The_Year, The_Month) {
      chooseday(The_Year - 1, The_Month, 0);
      }  function nextyear(The_Year, The_Month) {
      chooseday(The_Year + 1, The_Month, 0);
      }  function ShowCalender(The_Year, The_Month, The_Day, Firstday) {  var showstr;
      var Month_Day;
      var ShowMonth;
      var today;
      today = new Date();  switch (The_Month) {
      case 1: ShowMonth = "January"; Month_Day = 31; break;
      case 2:
      ShowMonth = "February";
      if (RunNian(The_Year))
      Month_Day = 29;
      else
      Month_Day = 28;
      break;
      case 3: ShowMonth = "March"; Month_Day = 31; break;
      case 4: ShowMonth = "April"; Month_Day = 30; break;
      case 5: ShowMonth = "May"; Month_Day = 31; break;
      case 6: ShowMonth = "June"; Month_Day = 30; break;
      case 7: ShowMonth = "July"; Month_Day = 31; break;
      case 8: ShowMonth = "August"; Month_Day = 31; break;
      case 9: ShowMonth = "September"; Month_Day = 30; break;
      case 10: ShowMonth = "October"; Month_Day = 31; break;
      case 11: ShowMonth = "November"; Month_Day = 30; break;
      case 12: ShowMonth = "December"; Month_Day = 31; break;  }
      showstr = "";
      showstr = "<Table cellpadding=0 cellspacing=0 border=1 bordercolor=#D3E2EB width=95% height=158 align=center valign=top>";
      showstr += "<tr><td width=0 style=&acute;cursor:hand&acute; onclick=prevyear(" + The_Year + "," + The_Month + ")>&lt;&lt;</td><td width=0>&nbsp;" + The_Year + "&nbsp;</td><td width=0 onclick=nextyear(" + The_Year + "," + The_Month + ") style=&acute;cursor:hand&acute;>&gt;&gt;</td><td width=0 style=&acute;cursor:hand&acute; onclick=prevmonth(" + The_Year + "," + The_Month + ")>&lt;&lt;</td><td width=100 align=center>" + ShowMonth + "</td><td width=0 onclick=nextmonth(" + The_Year + "," + The_Month + ") style=&acute;cursor:hand&acute;>&gt;&gt;</td></tr>";
      showstr += "<tr><td align=center width=100% colspan=6>";
      showstr += "<table cellpadding=0 cellspacing=0 border=1 bordercolor=#F3F7F8 width=100%>";
      showstr += "<Tr align=center bgcolor=#ffffff> ";
      showstr += "<td><strong><font color=#0000CC>日</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>一</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>二</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>三</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>四</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>五</font></strong></td>";
      showstr += "<td><strong><font color=#0000CC>六</font></strong></td>";
      showstr += "</Tr><tr>";  for (i = 1; i <= Firstday; i++)
      showstr += "<Td align=center >&nbsp;</Td>";  for (i = 1; i <= Month_Day; i++) {
      if ((The_Year == today.getYear()) && (The_Month == today.getMonth() + 1) && (i == today.getDate()))
      bgColor = "bgcolor=#FFCCCC";
      //else
      // bgColor = "#ffffff";  if (The_Day == i) bgColor = "#DfDfff";
      showstr += "<td align=center style=\"cursor:hand;\" onclick=chooseday(" + The_Year + "," + The_Month + "," + i + ")>" + i + "</td>";
      Firstday = (Firstday + 1) % 7;
      if ((Firstday == 0) && (i != Month_Day)) showstr += "</tr><tr>";
      }
      if (Firstday != 0) {
      for (i = Firstday; i < 7; i++)
      showstr += "<td align=center >&nbsp;</td>";
      showstr += "</tr>";
      }  showstr += "</tr></table></td></tr></table>";
      cc.innerHTML = showstr;
      }
    </script>  <script language="JavaScript">  var The_Year, The_Day, The_Month;
      var today;
      var Firstday;
      today = new Date();
      The_Year = today.getYear();
      The_Month = today.getMonth() + 1;
      The_Day = today.getDate();
      Firstday = GetWeekday(The_Year, The_Month);
      ShowCalender(The_Year, The_Month, The_Day, Firstday);
    </script>
    </div></td>
      </tr>
      </table>
     </BODY>
    </HTML>
    function GetWeekday(The_Year, The_Month){
    var da=new Date();
    da.setFullYear(The_Year);
    da.setMonth(The_Month-1);
    da.setDate(1);
    return da.getDay();
      }