javascript日期时间判断 下班结帖

happy664618843 2011-06-02 04:56:07
在文本框输入的时间格式是这样的2011-06-02 我想判断当前用户输入的时间是否是过去时间 包括年月天 如 年份相等都是2011年 现在是6月输入5月就提示格式错误 及输入2011-06-01也提示格式错误!该 怎么写JS代码进行判断 望高手指点! 解决立马结帖!
...全文
113 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
灬上海爽爷 2011-06-02
  • 打赏
  • 举报
回复
为什么不用个日历控件。美观。而且基本都自带选项,比如当前日期之前的不可选之类的。
如果以后需要可选,也方便,改个参数就行了。
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 kk297173176 的回复:]

<input type="text" id="dt" />
<input type="button" value="sssss" id="123"/>
<script type="text/javascript">

$("#123").click(function () {

var t =……
[/Quote]
不行 new Date("2011-06-02").getTime() 弹出来为NaN
lang_love_java 2011-06-02
  • 打赏
  • 举报
回复
思想是这样的,具体的自己看着办吧
lang_love_java 2011-06-02
  • 打赏
  • 举报
回复
<html>
<head>
<title>JavaScript</title>
<script>
function f1(id){
var t = document.getElementById(id);
var value = t.value;//用户输入日期

//解析用户输入的日期,获取年月日
var arr = value.split("-");
var tYear = arr[0];
var tMonth = arr[1];
var tDay = arr[2];

//获取当前日期的年月日
var nowdate = new Date();
var nowYear = nowdate.getFullYear();
var nowMonth = nowdate.getMonth();
var nowDay = nowdate.getDate();


//比较两个日期
if(tYear >= nowYear){
if(tMonth >= nowMonth){
if(tDay >= nowDay){
alert('输入日期正确!');
}else{
alert('输入日期已经过期!');
return;
}
}else{
alert('输入日期已经过期!');
return;
}
}else{
alert('输入日期已经过期!');
return;
}
}
</script>
</head>
<body>
<form action="">
日期:<input type="text" id="d1"></input>
<input type="submit" onclick="f1('d1');"></input>
</form>
</body>
</html>
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 jinfengyiye 的回复:]

都定死了为什么不直接写入
[/Quote]什么定死了
kk297173176 2011-06-02
  • 打赏
  • 举报
回复
<input type="text" id="dt" />
<input type="button" value="sssss" id="123"/>
<script type="text/javascript">

$("#123").click(function () {

var t = new Date();
var tem = t.getYear() + "-" + (new Date().getMonth() + 1) + "-" + t.getDay();
if (new Date(dt.value.replace(/-/g, "/")).getTime() > new Date(tem.replace(/-/g, "/")).getTime()) {
alert("ok");
}
});
</script>
gw6328 2011-06-02
  • 打赏
  • 举报
回复
都定死了为什么不直接写入
燥动的心 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 l617440460 的回复:]

JScript code

var time= Date.parse("2011-06-05");
var now=new date();
if(time<now){alert("错了!");}
[/Quote]
new Date
如果有比较时间部分,可以再处理一下.
ted 2011-06-02
  • 打赏
  • 举报
回复
输入时间和日期推荐用my97date
很方便
这个插件有判断
可以设置开始时间为今天的时间
有个参数start

如果要自己写的话,最笨的方法
var arr = date.split("-");分割下字符串
然后获取年var year = new Date().getYear();
if(arr[0] < year){
……
}
其余的自己写吧,获取的月要+1
JS默认月份是0-11
fengyun817 2011-06-02
  • 打赏
  • 举报
回复
Datejs这个开源脚本。里面比较的很方便。
JParser 2011-06-02
  • 打赏
  • 举报
回复
正则 和年月日比较一起用,下班了,不给你写了。
深红龙骑兵 2011-06-02
  • 打赏
  • 举报
回复

var time= Date.parse("2011-06-05");
var now=new date();
if(time<now){alert("错了!");}
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
待高手来回答 加分
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 kk297173176 的回复:]

如果 你的文本框是固定的值 还不如自动给他赋值 然后禁用掉 也不要让用户输入了
[/Quote] 这样肯不行 不是固定值啊 输入过去时间不可以 如2010-05-01 不行的 以现在时间为准 过去的时间不能输入的 将来的时间是可以输入的
kk297173176 2011-06-02
  • 打赏
  • 举报
回复
如果 你的文本框是固定的值 还不如自动给他赋值 然后禁用掉 也不要让用户输入了
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 kk297173176 的回复:]

获取当前日期(年月日)、获取文本框的值
if(当前日期!=文本框的值){do smthimg}
else{do smthimg}

----------------lz好像是这意思吧
[/Quote]
呵呵 不是啊 我是说输入过去时间 如果输入2011-06-10也可以 过去的时间不能输入!!
kk297173176 2011-06-02
  • 打赏
  • 举报
回复
获取当前日期(年月日)、获取文本框的值
if(当前日期!=文本框的值){do smthimg}
else{do smthimg}

----------------lz好像是这意思吧
happy664618843 2011-06-02
  • 打赏
  • 举报
回复
都没有高手来解决

87,917

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧