javascript - 使用 javascript asp.net mvc 比较日期

标签 javascript kendo-asp.net-mvc

我刚开始使用 javascript,我的情况对我来说似乎非常复杂! 我正在尝试将今天的日期与“DateFinReele”日期进行比较 我的“DateFinReele”日期比今天的日期小 我对“DateDebut”、“DateFinPrevue”和“DateFinReele”有另一个控件 “DateFinPrevue”和“DateFinReele”必须小于“DateDebut” 当我删除我的函数 checkDateInpuWithTodays() 时,其他控件工作得很好,但是当我添加它时,什么都不起作用(即使是其他控件!!!)

script >
  $(document).ready(function() {
    function DateDebutChange() {
      var DateDebutDate = DateDebut.value(),
        DateFinPrevueDate = DateFinPrevue.value(),
        DateFinReeleDate = DateFinReele.value();
      if (DateDebutDate) {
        DateDebutDate = new Date(DateDebutDate);
        DateDebutDate.setDate(DateDebutDate.getDate());
        DateFinPrevue.min(DateDebutDate);
        DateFinReele.min(DateDebutDate);
      } else if (DateFinPrevueDate) {
        DateDebut.max(new Date(DateFinPrevueDate)); <
      } else if (DateFinReeleDate) {
        DateDebut.max(new Date(DateFinReeleDate));
      } else {
        DateFinPrevueDate = new Date();
        DateFinReeleDate = new Date();
        DateDebut.max(DateFinPrevueDate);
        DateFinPrevue.min(DateFinPrevueDate);
      }
    }

    function DateFinReeleChange() {
      var DateFinReeleDate = DateFinReele.value(),
        DateDebutDate = DateDebut.value(),
        DateFinPrevueDate = DateFinPrevue.value();
      if (DateFinReeleDate) {
        DateFinReeleDate = new Date(DateFinReeleDate),
          DateFinPrevueDate = DateFinPrevue.value(),
          DateDebutDate = DateDebut.value();
      } else if (DateDebutDate) {
        DateFinPrevue.min(new Date(DateDebutDate)),
          DateFinReele.min(new Date(DateDebutDate));
      } else {
        DateFinPrevueDate = new Date();
        DateDebut.max(DateFinPrevueDate)
        DateDebut.max(DateFinReeleDate)
        DateFinPrevue.min(DateFinPrevueDate);
        DateFinReele.min(DateFinReeleDate)
      }
    }

    function DateFinPrevueChange() {
      var DateFinPrevueDate = DateFinPrevue.value(),
        DateDebutDate = DateDebut.value();
      if (DateFinPrevueDate) {
        DateFinPrevueDate = new Date(DateFinPrevueDate);
        DateFinPrevueDate.setDate(DateFinPrevueDate.getDate());
        DateDebut.max(DateFinPrevueDate);
      } else if (DateDebutDate) {
        DateFinPrevue.min(new Date(DateDebutDate));
      } else {
        DateFinPrevueDate = new Date();
        DateDebut.max(DateFinPrevueDate)
        DateFinPrevue.min(DateFinPrevueDate);
      }
    }

    function checkDateInpuWithTodays() {
      var x = new Date();
      var DateFinReeleDate = DateFinReele.value();
      if (DateFinReeleDate.value > x.valueOf()) {
        alert("La date de fin du projet doit être inférieure à celle d'aujourd'hui !")
        DateFinReele.value = null;
        DateFinReele.ready;
      }
    }
    var DateDebut = $("#DateDebut").kendoDatePicker({
      change: DateDebutChange
    }).data("kendoDatePicker");
    var DateFinPrevue = $("#DateFinPrevue").kendoDatePicker({
      change: DateFinPrevueChange
    }).data("kendoDatePicker");
    var DateFinReele = $("#DateFinReele").kendoDatePicker({
      change: DateFinReeleChange
    }).data("kendoDatePicker");
    DateDebut.max(DateFinPrevue.value());
    DateFinPrevue.min(DateDebut.value());
    DateFinReele.min(DateDebut.value());
    var DateFinReele = $("DateFinReele").kendoDatePicker({
      change: checkDateInpuWithTodays
    }).data("kendoDatePicker");
    DateFinReele.max(new Date().valueOf());
  }); < /script>

谁能帮帮我

最佳答案

实际上,您只需使用普通运算符就可以非常轻松地比较 JavaScript 日期。

每个Date对象实际上只是自 1970 年 1 月 1 日以来的毫秒数的表示。您可以使用 getTime 查看日期的时间值。方法。

var april212016 = new Date('2016-04-21');
console.log(april212016.getTime()); // 1461196800000

var wayWayBack = new Date('1970-01-01');
console.log(wayWayBack.getTime()); // 0

因此,在比较日期时,它只是在幕后比较这些数字:

var d1 = new Date('2016-03-01');
var d2 = new Date('2016-01-01');

console.log(d1 > d2); // true
console.log(d2 < d1); // true
console.log(d1 == d2); // false

关于javascript - 使用 javascript asp.net mvc 比较日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36763616/

相关文章:

kendo-ui - 无法将数据绑定(bind)到 Kendo Scheduler

c# - Kendo UI for MVC - TreeView - 仅选择子节点

java - 如何在java spring MVC中为相应行插入按钮功能

javascript - Javascript 中的人体检测

javascript - 在 componentDidMount 中 Promise 解析后响应 setState

javascript - 奇怪的 HTML 验证错误

javascript - 数组上的随机值

asp.net-mvc - 如何在剑道模板中动态设置列

kendo-ui - 剑道网格在最后一页,最后一行位置插入新记录

javascript - KendoUI 网格不会触发 saveChanges 事件