1
我正在嘗試使用Javascript更新日曆,但「undefined」顯示在底部,我看不到任何錯誤。如何擺脫Javascript「未定義」
這裏的JavaScript:
function calendar(month){
var s= new Date();
var year=s.getFullYear();
var wday= s.getDay();
var mday =s.getDate();
var days = new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat");
document.write(' <table border=\"1\" bordercolor=\"black\" cellpadding=\"1\" cellspacing=\"0\" width=\"220px\"><h6 style="size:.5em;"><tr>\n');
for (i=0; i<(days.length); i++) {
document.write(' <td style=\"background-color: #CCCCCC; text-align: center; width: 33px;padding:2px; \"> <strong> ' + days[i] + ' </strong></td> ');
}
var day=1;
b=6;
for (count = 0; count < (b*7); count++) {
var start= new Date(year,month,day,0,0,0,0);
var dayarray = new Array();
dayarray['mon'] = start.getMonth();// month
dayarray['yr'] = start.getYear();// year
dayarray['wday'] = start.getDay();//day of the week
dayarray['mday'] = start.getDate();// day of the month
if ((count % 7) == 0) {
document.write(' </tr><tr>\n');
}
if ((count < (dayarray['wday'])) || (dayarray['mon']!=month)) {
document.write ('<td style=\"background-color: white; text-align: center; width: 33px;padding:2px; \" > </td>\n');
} else {
document.write(' <td style=\"background-color: white; text-align: center; width: 33px;padding:2px; \">' + dayarray['mday'] + ' </td>\n ');
day +=1;
}
}
document.write(' </tr></h6></table>');
}
function next(c){
document.getElementById(c).style.visibility="visible";
document.getElementById((c-1)).style.visibility="hidden";
}
和HTML:
<div style="display: block;">
<img src="style/rightArrow.jpg" onclick="var it=12;next(it);it++;"/>
<br/>
<div id="calendar" style="margin:auto;width:220px;height:182px;" >
<div id="11" style="position:absolute;left:10px;top:400px;visibility: visible;">
<script type="text/javascript">var ha=0;d=new Date();document.write(calendar(d.getMonth()+ha));</script>
</div>
<div id="12" style="position:absolute;left:10px;top:400px;visibility:hidden;">
<script type="text/javascript">var ha=1;d=new Date();document.write(calendar(d.getMonth()+ha));</script>
</div>
<div id="13" style="position:absolute;left:10px;top:400px;visibility:hidden;">
<script type="text/javascript">var ha=2;d=new Date();document.write(calendar(d.getMonth()+ha));</script>
</div>
</div>
</div>
第二個問題:
爲什麼日曆只提前一個月?
程序員的能力是重用其他代碼,以節省時間和金錢。爲什麼不在互聯網上重新使用一些其他的預製代碼,而不是重新發明輪子? –
不要將TR包裝在
這是不正確的HTML,瀏覽器可能會做一些非常時髦的事情,試圖找出你的意思。使用CSS來設計這些作品。爲了提高性能,我建議生成一個html字符串,然後使用.innerHTML替換爲另一個元素。這就是說,如果你看到「未定義」的地方發生在源頭,你周圍看到了什麼? – scrappedcola
1.我只是在玩2.謝謝我修復了
的 –