各位高手注意了!!!!js日期急难问题!!!! 我现在 做了一个输入框,日期是自己手写进去的,格式为20070801,然后我点下一个输入框,可以让刚才那个输入框的日期自动+1,例如20070802,当然要有对月对日和对年的判断,不能有13月,32日等,还要考虑闰年的问题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上面的都少写了一天 不好意思代码框架如下 有问题 你自己修正一下 我没有验证 有问题发邮件到[email protected]function addOneDay(curDate){ var year = curDate.substring(0,4); var month = parseInt(curDate.substring(6,6),10); var day = parseInt(curDate.substring(6,8),10); /*类似的添加验证输入的时间是不是非法的*/ if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) { if(day == 31) { if(month <10) return year+"0"+month+"01"; else if(month == 10) return year+"1101"; else return addZero(parseInt(year+1))+"0101"; } else { day += 1; if(month <10) { if(day < 10) return year+"0"+month+"0"+day; else return year+"0"+month+day; } else { if(day < 10) return year+month+"0"+day; else return year+month+day; } } } else if(month == 4 || month == 6 || month == 9 || month == 11) { if(day == 30) { if(month <10) return year+"0"+month+"01"; else return year+"1201"; } else { day += 1; if(month <10) { if(day < 10) return year+"0"+month+"0"+day; else return year+"0"+month+day; } else { if(day < 10) return year+month+"0"+day; else return year+month+day; } } else { var i_year = parseInt(year,10); if(isLeapYear(i_year))//闰年 { if(day == 29) return year+"0301"; else { day += 1; if(day < 10) return year+"020"+day; else return year+"02"+day; } } else { if(day == 28) return year+"0301"; else { day += 1; if(day < 10) return year+"020"+day; else return year+"02"+day; } } }}function addZero(year){ if(year < 10) return "000"+year; else if(year < 100) return "00"+year; else if(year < 1000) return "0"+year; else return year;}//判断是否是闰年function isLeapYear(year){ if(year%4 == 0) { if(year%100 == 0) { if(year%400 == 0) return true; else return false; } else return true; } else return false;} var month = parseInt(curDate.substring(4,6),10); java - ArrayList问题 添加和删除数据没有发现LinkedList比ArrayList快 大学生学习java都应该学些什么? 关于java的问题 如何设计时间日期类的hashcode() JAVA中SQL 查询 多线程问题 关于jndi Drools&Spring集成之后,怎么在DRL规则文件LHS和RHS部分调用DAO方法? 如何在JTable的不同行不同列里显示不同的组件,每一个方格里一个控件 文件内容的读取,删除,和覆盖,大家都是怎么做的啊? 提问 挺急的 如何提取数据库的主外键?
代码框架如下 有问题 你自己修正一下 我没有验证 有问题发邮件到[email protected]
function addOneDay(curDate)
{
var year = curDate.substring(0,4); var month = parseInt(curDate.substring(6,6),10); var day = parseInt(curDate.substring(6,8),10); /*类似的添加验证输入的时间是不是非法的*/ if(month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
if(day == 31)
{
if(month <10)
return year+"0"+month+"01";
else if(month == 10)
return year+"1101";
else
return addZero(parseInt(year+1))+"0101";
}
else
{
day += 1; if(month <10)
{
if(day < 10)
return year+"0"+month+"0"+day;
else
return year+"0"+month+day;
}
else
{
if(day < 10)
return year+month+"0"+day;
else
return year+month+day;
}
}
}
else if(month == 4 || month == 6 || month == 9 || month == 11)
{
if(day == 30)
{
if(month <10)
return year+"0"+month+"01";
else
return year+"1201";
}
else
{
day += 1; if(month <10)
{
if(day < 10)
return year+"0"+month+"0"+day;
else
return year+"0"+month+day;
}
else
{
if(day < 10)
return year+month+"0"+day;
else
return year+month+day;
}
}
else
{
var i_year = parseInt(year,10); if(isLeapYear(i_year))//闰年
{
if(day == 29)
return year+"0301";
else
{
day += 1;
if(day < 10)
return year+"020"+day;
else
return year+"02"+day;
}
}
else
{
if(day == 28)
return year+"0301";
else
{
day += 1;
if(day < 10)
return year+"020"+day;
else
return year+"02"+day;
}
}
}
}function addZero(year)
{
if(year < 10)
return "000"+year;
else if(year < 100)
return "00"+year;
else if(year < 1000)
return "0"+year;
else
return year;
}//判断是否是闰年
function isLeapYear(year)
{
if(year%4 == 0)
{
if(year%100 == 0)
{
if(year%400 == 0)
return true;
else
return false;
}
else
return true;
}
else
return false;
}