发布:thatboy   来源:Net     【  

本文介绍下,在javascript代码中,比较两个日期大小的方法,有需要的朋友参考下。

1,比较日期大小的js代码

复制代码代码示例:
<script>
var beginDate=$("#beginDate").val();  
 var endDate=$("#endDate").val();  
 var d1 = new Date(beginDate.replace(/\-/g, "\/"));  
 var d2 = new Date(endDate.replace(/\-/g, "\/"));  
  
  if(beginDate!=""&&endDate!=""&&d1 >=d2)  
 {  
  alert("开始时间不能大于结束时间!");  
  return false;  
 }
 </script>

2,Js比较时间和日期大小

复制代码代码示例:
<html>   
<head>   
<title>calendar-比较时间和日期大小-www.jbxue.com</title>   
<script type="text/javascript" src="CalendarFramework.js"></script>   
</head>   
<body>   
开始时间:<input onfocus="setday(this)" id="startTime" name="startTime">到&nbsp;&nbsp;   
结束时间:<input onfocus="setday(this)" id="endTime" name="endTime">   
          <input type="button" onclick="checkTime()" value="校验"/>   
          </body>   
<script type="text/javascript" >   
checkTime = function() {   
    var startTime = document.getElementById("startTime").value;   
    var endTime = document.getElementById("endTime").value;   
    compareCalendar(startTime, endTime);         
}   
//比较日前大小  
function compareDate(checkStartDate, checkEndDate) {      
    var arys1= new Array();      
    var arys2= new Array();      
if(checkStartDate != null && checkEndDate != null) {      
    arys1=checkStartDate.split('-');      
      var sdate=new Date(arys1[0],parseInt(arys1[1]-1),arys1[2]);      
    arys2=checkEndDate.split('-');      
    var edate=new Date(arys2[0],parseInt(arys2[1]-1),arys2[2]);      
if(sdate > edate) {      
    alert("日期开始时间大于结束时间");         
    return false;         
}  else {   
    alert("通过");   
    return true;      
    }   
    }      
}     
  
//判断日期,时间大小  
function compareTime(startDate, endDate) {   
 if (startDate.length > 0 && endDate.length > 0) {   
    var startDateTemp = startDate.split(" ");   
    var endDateTemp = endDate.split(" ");   
                   
    var arrStartDate = startDateTemp[0].split("-");   
    var arrEndDate = endDateTemp[0].split("-");   
  
    var arrStartTime = startDateTemp[1].split(":");   
    var arrEndTime = endDateTemp[1].split(":");   
  
var allStartDate = new Date(arrStartDate[0], arrStartDate[1], arrStartDate[2], arrStartTime[0], arrStartTime[1], arrStartTime[2]);   
var allEndDate = new Date(arrEndDate[0], arrEndDate[1], arrEndDate[2], arrEndTime[0], arrEndTime[1], arrEndTime[2]);   
                   
if (allStartDate.getTime() >= allEndDate.getTime()) {   
        alert("startTime不能大于endTime,不能通过");   
        return false;   
} else {   
    alert("startTime小于endTime,所以通过了");   
    return true;   
       }   
} else {   
    alert("时间不能为空");   
    return false;   
      }   
}   
//比较日期,时间大小  
function compareCalendar(startDate, endDate) {   
if (startDate.indexOf(" ") != -1 && endDate.indexOf(" ") != -1 ) {   
    //包含时间,日期  
        compareTime(startDate, endDate);               
} else {   
    //不包含时间,只包含日期  
    compareDate(startDate, endDate);   
      }   
}   
</script>   
</html> 

分享:JS比较两个日期大小的更多相关文章

  1. js中两个日期大小比较,获取当前日期,日期加减一天

    一.两个日期大小比较 1.日期参数格式:yyyy-mm-dd // a: 日期a, b: 日期b, flag: 返回的结果 function duibi(a, b,flag) { var arr = ...

  2. js比较两个日期大小

    //比较两个日期大小 function dateCompare(startDate,endDate){ var aStart=startDate.split('-'); //转成成数组,分别为年,月, ...

  3. sqlserver2008存储过程(比较两个日期大小和获取当前月最大天数的存储过程)

    下面简单介绍sqlserver2008两个常用的存储过程 1.比较两个日期大小的存储过程 2.获取当前月份的最大天数的存储过程 1.创建比较两个日期大小的存储过程 1)创建比较两个日期大小的存储过程 ...

  4. DateTime.Compare(t1,t2)比較两个日期大小

    DateTime.Compare(t1,t2)比較两个日期大小,排前面的小,排在后面的大,比方:2011-2-1就小于2012-3-2返回值小于零:  t1 小于 t2. 返回值等于零 : t1 等于 ...

  5. js计算两个日期的天数差值

    js计算两个日期的天数差值 通过两个日期计算这两个日期之间的天数差值 /** * 计算天数差的函数,通用 * @param sDate1 * @param sDate2 * @returns {Num ...

  6. DateTime.Compare(t1,t2)比较两个日期大小

    DateTime.Compare(t1,t2)比较两个日期大小,排前面的小,排在后面的大,比如:2011-2-1就小于2012-3-2返回值小于零:  t1 小于 t2. 返回值等于零 : t1 等于 ...

  7. JS计算两个日期之间的天数

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. java之比较两个日期大小----https://blog.csdn.net/dongfangbaiyun/article/details/51225469

    https://blog.csdn.net/dongfangbaiyun/article/details/51225469 java之比较两个日期大小 最近又用到两个日期大小的比较,因此记录在此,方便 ...

  9. JS 比较日期相隔都少天&& 比较两个日期大小&&指定日期往前后推指定天数

    //这些天常接触到有关于js操作日期事 就小结了一下,希望对你有帮助 function conversionDate(a,b){ var start =a.split('-'); var end = ...

随机推荐

  1. Web Api 2 用户认证模板解析-----外部用户认证模式

    一般的社交提供商不提供一个Web Service进行身份验证(有很好的理由),而提供一个身份验证的界面,其中包含了某种协议如OpenID(连接)或使用OAuth2认证.这意味着客户端应用必须使用一个浏 ...

  2. Java基础知识强化之多线程笔记06:Lock接口 (区别于Synchronized块)

    1. 简介 我们讲到了如何使用关键字synchronized来实现同步访问.本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式 ...

  3. Java中transient有何作用?

    transient关键字用来防止序列化域.如果一个引用类型被transient修饰,则其反序列化的结果是null.基本类型则为0.如果引用类型时不可序列化的类,则也应该使用transient修饰,它在 ...

  4. (三)u-boot2013.01.01 for TQ210:《mkconfig分析》

    /* 和分析makefile一样,分析mkconfig同样注重句法分析 */ ############################################################# ...

  5. mysql_DML_delete

    delete from 表名   删除表里的数据 可以配合where试用

  6. javascript组件开发之基类继承实现

    上一篇文章大概的介绍了一下关于javascript组件的开发方式,这篇文章主要详细记一下基类的编写,这个基类主要是实现继承的功能 为什么要封装基类? 由于这次重构项目需要对各种组件进行封装,并且这些组 ...

  7. 剑指Offer38 数组所有数字出现两次,只有两个出现了一次,找出这两个数字

    /************************************************************************* > File Name: 38_Number ...

  8. AIX学习笔记(更新中)

    AIX操作系统基本命令 系统的进入和退出login: 输入用户名(例如:user01)password: 输入用户口令若用户名及口令均正确,则用户将登陆成功.此时系统会出现命令提示符 $或#,即表示可 ...

  9. poj 3728 The merchant 倍增lca求dp

    题目: zdf给出的题目翻译: 从前有一个富饶的国度,在这里人们可以进行自由的交易.这个国度形成一个n个点的无向图,每个点表示一个城市,并且有一个权值w[i],表示这个城市出售或收购这个权值的物品.又 ...

  10. hdu 3917 Road constructions 最大权闭合子图

    样例说明: n(城市数目)   m(工程队数目) 每个工程队上交的税收 val[i] k(k个工程) xi   yi  ci  costi , 工程队ci承包由xi到yi,政府的补贴为costi 注意 ...