打印

请教如何通过下拉框获得指定时间?

请教如何通过下拉框获得指定时间?

select内有分别是“一年、半年、四个月、两个月、一个月、15天、一周”
分别对应当前日期“一年、半年、四个月、两个月、一个月、15天、一周”以后的时间

比如今天是2008-06-27,选择“一年”后在input输出2009-06-27

网上搜索了没有类似的,只好厚颜请求教,不胜感激!

================================================================

回二楼,JS我实在不会写,所以只能求助有能力的大大,需要的就是下面的这种效果。谢谢谢谢

 提示:您可以先修改部分代码再运行
[ 本帖最后由 coffeetion 于 2008-6-27 13:14 编辑 ]
这可是个体力活阿,至少楼主也要完成大部分,贴出来大家copy修改阿
一楼更新了需要的效果,还望各位大大帮忙!谢谢。
如果选择一个月:

  • 当前2007-1,日期29、30、31,都返回2007-2-28
  • 当前2008-1,日期30、31,返回2008-2-29

依此类推

 提示:您可以先修改部分代码再运行
[ 本帖最后由 yangedie 于 2008-6-27 17:33 编辑 ]

TOP

还在为头像烦恼?还在为不能关注好友动态烦忧?快来蓝色理想家园吧!
To yangedie:
不用那么麻烦的...写得太复杂了

 提示:您可以先修改部分代码再运行

TOP

引用:
原帖由 hutia 于 2008-6-27 19:05 发表
To yangedie:
不用那么麻烦的...写得太复杂了
不知道楼主的详细需求,但是如果按照我的需求你的代码就不符合

TOP

哦,都不需要考虑大月、小月,那代码肯定简单很多了

TOP

引用:
原帖由 yangedie 于 2008-6-27 20:03 发表
哦,都不需要考虑大月、小月,那代码肯定简单很多了
是啊...偶这种懒人一向按最懒的办法做,呵呵...

又看了看你的代码,还是很好的说

TOP



 提示:您可以先修改部分代码再运行

TOP

版主的代码var t0=new Date(),
如果当前日期是2007-1-31,那就是var t0=new Date(2007,0,31)
选择一个月后是2007-3-3了

TOP

不好意思来晚了

谢谢 yangedie hutia yangedie caiying2007 和各位蓝色的兄弟!

谢谢!

TOP

因为CMS的关系,读到的时间必须是2008-06-06这样的格式,也就是月、日不足2位数字的,用0补上。

4楼yangedie大大的代码能不能也是输出2008-06-06这样的格式啊,我尝试用replace(/-/g, "/");正则替换,可惜失败了。

TOP



 提示:您可以先修改部分代码再运行
[ 本帖最后由 caiying2007 于 2008-6-28 03:59 编辑 ]

TOP

  再次感谢!问题解决了!日期修改为01-31后,版主大大的代码选择一个月后的时间显示为正确的02-29

TOP

引用:
原帖由 coffeetion 于 2008-6-28 12:19 发表
  再次感谢!问题解决了!日期修改为01-31后,版主大大的代码选择一个月后的时间显示为正确的02-29
版主代码没有仔细分析,不过没有判断是否闰年
如果当前时间是2007-1-31,一个月后确是2007-2-1了

TOP

回复 yangedie 在 15# 的帖子

没有判断是否闰年
--交给javascript判断了

修改两处:判断上界/循环上界:

 提示:您可以先修改部分代码再运行
[ 本帖最后由 caiying2007 于 2008-6-29 22:52 编辑 ]

TOP

嗯,版主的代码是不需要判断是否闰年

TOP

不错。
但不怎么好理解。如果是要两年、三年呢?这个判断就局限了:
if (ta>12)tstr=getnewtime(new Date(t0.ty,t0.tm,t0.td+ta/100));
麻烦大侠再改改。

TOP

把if (ta>12) 改成if (ta>99),不能超过8年,8×12<100

 提示:您可以先修改部分代码再运行

TOP

test:

 提示:您可以先修改部分代码再运行
[ 本帖最后由 caiying2007 于 2008-7-5 14:43 编辑 ]

TOP