js比较两个日期大小 10
我要比较两个时间。时间是通过开窗获取的,格式基本上是这样的:2014-03-0212:00一个是开始时间,一个是结束时间。如果结束之间在开始时间前,或者相等,我就要弹出一...
我要比较两个时间。时间是通过开窗获取的,格式基本上是这样的:2014-03-02 12:00
一个是开始时间,一个是结束时间。如果结束之间在开始时间前,或者相等,我就要弹出一个提示框,让填表人去修改。
请问在js里面怎么处理。 展开
一个是开始时间,一个是结束时间。如果结束之间在开始时间前,或者相等,我就要弹出一个提示框,让填表人去修改。
请问在js里面怎么处理。 展开
4个回答
展开全部
思路:
先都转换成日期。然后再用毫秒数进行比较。
下面是简单的例子:
function tab(date1,date2){
var oDate1 = new Date(date1);
var oDate2 = new Date(date2);
if(oDate1.getTime() > oDate2.getTime()){
console.log('第一个大');
} else {
console.log('第二个大');
}
}
tab('2015-10-10','2015-10-11');
展开全部
<!DOCTYPE HTML>
<html>
<head>
<meta charset=UTF-8 />
<title>Page Title</title>
<script>
window.onload = function()
{
var reg = /^\s*|\s*$/g;
var t1 = document.getElementById("t1").value.replace(reg, "");
var t2 = document.getElementById("t2").value.replace(reg, "");
reg = /^(\d+)\-(\d+)\-(\d+)\s+(\d+)\:(\d+)\:(\d*)$/;
if (!reg.test(t1) || !reg.test(t2)) {
throw new Error("Date Format is Error !");
return;
}
var d1 = new Date(t1.replace(reg, "$1"), parseInt(t1.replace(reg, "$2")) - 1, t1.replace(reg, "$3"));
d1.setHours(t1.replace(reg, "$4"), t1.replace(reg, "$5"), t1.replace(reg, "$6"));
var d2 = new Date(t2.replace(reg, "$1"), parseInt(t2.replace(reg, "$2")) - 1, t2.replace(reg, "$3"));
d2.setHours(t2.replace(reg, "$4"), t2.replace(reg, "$5"), t2.replace(reg, "$6"));
if (d1 > d2) {
alert("error");
}
}
</script>
</head>
<body>
<input type="text" id="t1" value="2014-03-02 12:00:01" />
<input type="text" id="t2" value="2014-03-02 12:00:00" />
</body>
</html>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
<script type="text/javascript">
function compare(beforeTime,endTime){
//beforeTime/endTime的格式2014-03-11 12:00
if(todate(endTime) <= todate(beforeTime)){
//这里作处理
}
}
function todate(str_time){
//格式2014-03-11 12:00
var dateArr = str_time.substring(0,10).split('-');
var timeArr = str_time.substring(11,16).split(':');
return new Date(parseInt(dateArr[0]),parseInt(dateArr[1]) - 1,parseInt(dateArr[2]),parseInt(timeArr[0]),parseInt(timeArr[1]));
}
</script>
function compare(beforeTime,endTime){
//beforeTime/endTime的格式2014-03-11 12:00
if(todate(endTime) <= todate(beforeTime)){
//这里作处理
}
}
function todate(str_time){
//格式2014-03-11 12:00
var dateArr = str_time.substring(0,10).split('-');
var timeArr = str_time.substring(11,16).split(':');
return new Date(parseInt(dateArr[0]),parseInt(dateArr[1]) - 1,parseInt(dateArr[2]),parseInt(timeArr[0]),parseInt(timeArr[1]));
}
</script>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var time_str1 = document.getElementById('timetext1').value;
var time_str2 = document.getElementById('timetext2').value;
if(time_str1 !== '' && time_str2 !== ''){
var time1 = new Date(time_str1.replace(/-/g,"/"));
var time2 = new Date(time_str2.replace(/-/g,"/"));
if(time1 === time2){
alert('=');
}
else if(time1 > time2){
alert('>');
}
else{
alert('<');
}
else{
alert('empty');
}
ps:手打的,自己试试,不行勿怪。
var time_str2 = document.getElementById('timetext2').value;
if(time_str1 !== '' && time_str2 !== ''){
var time1 = new Date(time_str1.replace(/-/g,"/"));
var time2 = new Date(time_str2.replace(/-/g,"/"));
if(time1 === time2){
alert('=');
}
else if(time1 > time2){
alert('>');
}
else{
alert('<');
}
else{
alert('empty');
}
ps:手打的,自己试试,不行勿怪。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询