• js中的时间对比


    参数格式(yyyy-MM--dd)

    var a = new Date("时间参数");

    var b = new Date("时间参数");

    if(a.getTime()<=b.getTime()){

    alert("想要描述的文字!")

    }

    这样子就可以在js中直接用于比较两个时间的前后!

    下面是自己用jcDate写的一个例子,仅供需要的人用!

    首先标记两个时间点

    $("#start").click(function(){
    $("#timeStatue").val(0)
    });
    $("#end").click(function(){
    $("#timeStatue").val(1)
    });

    因为插件只引用一次,所以需要对两个时间点分别定义

    var Sy = $year.text()+"-",
    Sm = $month.text()+"-",
    Sd = $HiddenText.val();
    NowDateArr = new Array(Sy,Sm,Sd);
    dateInfo =NowDateArr.join(options.format);
    if($hh.val() != "00" || $mm.val() != "00" ){
    var Sh = $hh.val(),
    Sm = $mm.val();
    NowDateArr.push(Sh+":"+Sm);
    printDate = NowDateArr.join(options.format).substring(),
    format = printDate.split("/");
    dateInfo = format[0]+options.format+format[1]+options.format+format[2]+" "+format[3]
    };

    获取指定格式的时间(yyyy-MM-dd)

    当然其中的“-”也可分别换成“年”,“月”,“日”

    var Sy1 = $year.text()+"年",
    Sm1 = $month.text()+"月",
    Sd1 = $HiddenText.val()+"日";
    NowDateArr = new Array(Sy1,Sm1,Sd1);
    dateInfo1 =NowDateArr.join(options.format);
    if($hh.val() != "00" || $mm.val() != "00" ){
    var Sh1 = $hh.val(),
    Sm1 = $mm.val();
    NowDateArr.push(Sh1+":"+Sm1);
    printDate = NowDateArr.join(options.format).substring(),
    format = printDate.split("/");
    dateInfo1 = format[0]+options.format+format[1]+options.format+format[2]+" "+format[3]

    最后是赋值

    var data = $("#timeStatue").val();
    var a1 =new Date($("#startTime").val());
    var b1 =new Date($("#endTime").val());
    if(data==0){
    var d1= new Date(dateInfo);
    if($("#startTime").val()!=""){
    if($("#endTime").val()==""){
    $("input.dateVisited").val(dateInfo1);
    $("#startTime").val(dateInfo);
    closeDate();
    }else{
    if(b1.getTime()<=d1.getTime()){
    alert("开始日期不能大于或等于结束日期!");
    closeDate();
    }else{
    $("input.dateVisited").val(dateInfo1);
    $("#startTime").val(dateInfo);
    closeDate();
    }
    }
    }else{
    if($("#endTime").val()==""){
    $("input.dateVisited").val(dateInfo1);
    $("#startTime").val(dateInfo);
    closeDate();
    }else{
    if(b1.getTime()<=d1.getTime()){
    alert("结束日期不能小于或等于开始日期!")
    closeDate();
    }else{
    $("input.dateVisited").val(dateInfo1);
    $("#startTime").val(dateInfo);
    closeDate();
    }
    }
    }
    }
    if(data==1){
    var c1= new Date(dateInfo);
    if($("#endTime").val()!=""){
    if($("#startTime").val()==""){
    $("input.dateVisited").val(dateInfo1);
    $("#endTime").val(dateInfo);
    closeDate();
    }else{
    if(a1.getTime()>=c1.getTime()){
    alert("结束日期不能小于开始日期!")
    closeDate();
    }else{
    $("input.dateVisited").val(dateInfo1);
    $("#endTime").val(dateInfo);
    closeDate();
    }
    }
    }else{
    if($("#startTime").val()==""){
    $("input.dateVisited").val(dateInfo1);
    $("#endTime").val(dateInfo);
    closeDate();
    }else{
    if(a1.getTime()>=c1.getTime()){
    alert("结束日期不能小于开始日期!")
    closeDate();
    }else{
    $("input.dateVisited").val(dateInfo1);
    $("#endTime").val(dateInfo);
    closeDate();
    }
    }
    }
    }
    };

    主要的麻烦点就在最后的校验部分,因为jcDate本身只是添加时间,并没有相关的处理大小的方法,而且初始化的样式很丑,和date97样式类似,但要是css小白用起来还是有点问题的!

    不过只要改一点点相关的样式,就可以看起来很高大上,开发的路上,勇往直前吧!

  • 相关阅读:
    ural 1146. Maximum Sum(动态规划)
    ural 1119. Metro(动态规划)
    ural 1013. K-based Numbers. Version 3(动态规划)
    Floyd算法
    杭电21题 Palindrome
    杭电20题 Human Gene Functions
    杭电15题 The Cow Lexicon
    杭电三部曲一、基本算法;19题 Cow Bowling
    杭电1002 Etaoin Shrdlu
    Qt 学习之路 2(37):文本文件读写
  • 原文地址:https://www.cnblogs.com/duzjextjs/p/6102817.html
Copyright © 2020-2023  润新知