var BirYear,BirMonth,BirDay;
function Ymd() {
BirYear=parseInt(prompt("请输入您的出生年份"));
BirMonth=parseInt(prompt("请输入您的出生月份"));
BirDay=parseInt(prompt("请输入您的出生日期"));
if(BirMonth=1||BirMonth=3||BirMonth=5||BirMonth=7||BirMonth=8||BirMonth=10||BirMonth=12){
BirDay<=31;
}else{
alert("最多只有31天");
}
if(BirMonth=4||BirMonth=6||BirMonth=9||BirMonth=11){
BirDay<=30;
}else{
alert("最多只有30天");
}
}
Ymd();
var arr=[31,28,31,30,31,30,31,31,30,31,30,31]; //每个月份的天数
var day=0;
function WhDay() {
if((BirYear%4==0&&BirYear%100!=0) || BirYear%400==0) { //判断输入的年份是否为闰年
arr[1]=29;
}for(i=0;i
day+=arr[i];
}
day+=BirDay;
};
WhDay(BirYear,BirMonth,BirDay);
document.write("您的生日在"+BirYear+"年"+"是第"+day+"天");
加了if去判断大小月后,程序就不能弹窗了,请老师指点。
这篇博客探讨了一个JavaScript代码片段,该片段旨在获取用户输入的出生日期并进行大小月验证。博主遇到一个问题,在加入大小月判断后,程序无法正确弹出错误提示。经过分析,问题出在条件判断语句的使用上。解决方案是将等于号(=)更改为等于或(||)。修复后的代码能正确验证不同月份的最大天数,并计算出生日期在当年的第几天。这对于前端表单验证和日期处理是很有用的知识点。


被折叠的 条评论
为什么被折叠?



