写个东西没写出来

wtcsy wtcsy 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
看到有人要年,月,日的联动菜单
于是想写一个
结果没写出来,并出现的了我无法理解的问题.
同样是一个对象的方法  一个可以alert出属性  一个却alert出来的是null.....  - -!
问题所在的地方代码中有说明
我想知道怎么去理解这个东西  请大虾们指教下  
<script>
function Calendar(startyear,endyear){
this.year = new Array()
var j=0
for(var i = startyear;i<=endyear;i++)
{this.year[j]=i;
j++}

this.month=[1,2,3,4,5,6,7,8,9,10,11,12]

this.day=[[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30],[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]]
}
Calendar.prototype.Createselect=function(){
var sele1 = document.createElement("select")
sele1.id="year"
document.body.appendChild(sele1)
var sele2 = document.createElement("select")
sele2.id="month"
document.body.appendChild(sele2)
var sele3 = document.createElement("select")
sele3.id="day"
document.body.appendChild(sele3)
this.Isyear(this.year[0])
this.Initialization()
this.addmonth()
}

Calendar.prototype.Initialization=function(){
for(var i= 0;i<this.year.length;i++)
{document.getElementById("year").options.add(new Option(this.year[i],i))}
for(var i= 0;i<this.month.length;i++)
{document.getElementById("month").options.add(new Option(this.month[i],i))}
for(var i= 0;i<this.day[1].length;i++)
{document.getElementById("day").options.add(new Option(this.day[1][i],i))}
alert(this.day[1]) // 这里出来的是那个数组的东西。。
}

Calendar.prototype.Isyear = function(year){
if (0==year%4&&((year%100!=0)||(year%400==0)))
{this.day[1]=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29]}
else
{this.day[1]=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28]}
}

Calendar.prototype.addyear = function(year){
var obj = document.getElementsById("year")
obj.attachEvent("onchange",this.changeyear)
}

Calendar.prototype.addmonth = function(year){
var obj = document.getElementById("month")
obj.attachEvent("onchange",this.changemonth)
}

Calendar.prototype.changemonth = function(){
document.getElementById("day").length=0
var nowday = this.day[event.srcElement.value]
alert(this.day[1]) // 这里alert出来的是 null
}


window.onload=function(){
var c = new Calendar(2007,2009)
c.Createselect()
}

</script>
...全文

相关推荐

电信宽带连接自动重连(自己为了挂机自己写的,比较简单)

这个东西是我为了挂机传奇自己写的,原因是公司用的电信宽带,老是断网。害得我总是断网传奇老是断。我用teamview远程操控电脑看是不是在挂机的时候老是断。所以就萌生了做这个的想法。以前没写过exe的东西,做得粗糙。凑合着用吧。电信宽带客户端得在设置中悬赏自动重连啊。他的原理就是发现如果没有网络就杀掉进程,重新开启进程,开启进程后,电信宽带会自动重连。需要代码的在我的博客中自己找一下。我会发完整的代码。

CattleDrinkRedWine

VB写的代理扫描

软件说明: 菜鸟写的东西大家不要笑^O^ 分析本地打开的端口及对应远程和使用端口的进程PID;利用大概1分钟吧,扫那么几百个PING<3秒的代理,更换和查询代理的功能没写进去..困了,睡觉.有啥意见允许提,最好发到http://blog.csdn.net/zcsor当然信箱偶尔我也看shaoyan5@163.com 上一个发错了..嘿嘿,么办法都说困了.....这个应该将就着能用了.好了,睡觉.

清晨曦月

VB写的代理服务器获取及本地开放端口分析工具

菜鸟写的东西大家不要笑^O^ 分析本地打开的端口及对应远程和使用端口的进程PID;利用大概1分钟吧,扫那么几百个PING<3秒的代理,更换和查询代理的功能没写进去..困了,睡觉.有啥意见允许提,最好发到http://blog.csdn.net/zcsor当然信箱偶尔我也看shaoyan5@163.com

清晨曦月

鼠标画 自己用VB写的一个小东西,

闲来无事自己用VB写的一个小东西,很好玩

ertywwwwuyi

java写的一个类似魔方的东西

大学的时候写着玩的,一个类似魔法的东西,可以看看,反编译后可以看到源码

vzp
评论 1
收藏 已收藏
分享
返回顶部
wtcsy
JavaScript 87,983 成员 224,681 内容