layui時間插件實現動態限制可選時間范圍和統計時間間隔


<script>
layui.use('laydate', function() {
  var laydate = layui.laydate;
  var start = laydate.render({ //開始時間
    elem: '#startDate',
    type: 'datetime',
    format: 'yyyy-MM-dd HH:mm:ss',
    done: function(value, date) { //點擊確定回調事件
      endMax = end.config.max;
      end.config.min = date;
      end.config.min.month = date.month - 1;
      timeOperation(value, $("#endDate").val())
    },
    change: function(value, date, endDate) { //點擊改變回調事件
      var timestamp2 = Date.parse(new Date(value));
      timestamp2 = timestamp2 / 1000;
      end.config.min = timestamp2;
      end.config.min.month = date.month - 1;
    }
  });
  var end = laydate.render({ //結束時間
    elem: '#endDate',
    type: 'datetime',
    format: 'yyyy-MM-dd HH:mm:ss',
    done: function(value, date) { //點擊確定回調事件
      if ($.trim(value) == '') {
        var curDate = new Date();
        date = {
          'date': curDate.getDate(),
          'month': curDate.getMonth() + 1,
          'year': curDate.getFullYear()
        };
      }
      start.config.max = date;
      start.config.max.month = date.month - 1;
      timeOperation($("#startDate").val(), value)
    }
  });
});

//統計時間間隔
function timeOperation(startTimeStr, endTimeStr) {
  if (startTimeStr != "" && startTimeStr != null && endTimeStr != "" && endTimeStr != null) {
    //開始時間
    var startDate = new Date(startTimeStr.replace("-", "/").replace("-", "/"));
    //結束時間
    var endDate = new Date(endTimeStr.replace("-", "/").replace("-", "/"));
    if (endDate < startDate) {
      layer.msg("開始時間不能大於結束時間!")
      return false;
    }
    $("#timeSum").html((endDate.getTime() - startDate.getTime()) / 1000)
    console.log((endDate.getTime() - startDate.getTime()) / 1000 + "秒")
    console.log(parseInt((endDate.getTime() - startDate.getTime()) / 1000 / 60) + "分" + (endDate.getTime() - startDate.getTime()) /
      1000 % 60 + "秒")
    console.log(parseInt((endDate.getTime() - startDate.getTime()) / 1000 / 60 / 60) + "時" +
      parseInt((endDate.getTime() - startDate.getTime()) / 1000 / 60 % 60) + "分" +
      (endDate.getTime() - startDate.getTime()) / 1000 % 60 + "秒")
  }
}
</script>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM