gpt4 book ai didi

javascript - 如何使用 JavaScript\JQuery 检查一个日期是否早于另一个日期?

转载 作者:可可西里 更新时间:2023-11-01 01:36:18 25 4
gpt4 key购买 nike

我是 JavaScript 开发的新手,我必须执行以下任务:我有 2 个 input 标签,其中包含 2 个表示日期的字符串,格式为 01/12/2014(日/月/年)。我使用此输入标签来搜索具有这些日期中的日期字段的对象。

<input type="hidden" size="9" class="impPrfTot" readonly="readonly"
onchange="cambioDataDa(this.value)"
name="dataDa" id="datada" value="<%=request.getSession().getAttribute("dataDa")%>"
style="font-size: 11px;color: #000000;">

<input type="hidden" size="9" class="impPrfTot" readonly="readonly"
onchange="cambioDataA(this.value); checkData(this.value)"
name="dataA" id="dataa" value="<%=request.getSession().getAttribute("dataA")%>"
style="font-size: 11px;color: #000000;">

<button class="dataDadataAButton" name="submitdataDadataA" onclick="sottomettiFormDataDaA(this)">Cerca</button>

最后,我有一个按钮,用于使用此 JavaScript 提交此表单:

function sottomettiFormDataDaA(obj) {
document.getElementById('dataDaAForm').submit();
}

我需要的是防止 dataA(英文 dateTo)输入中的值早于 dataDa 值(英文 dateFrom ).

我正在尝试做这样的事情:

  1. JavaScript 在数据更改时的 onchange 事件中被调用,并获取 dataA 字符串(代表 dateTo 日期)并检查它是否是 dataA 的前一个(日期至今)。

  2. 如果之前的检查为真,则日期范围无效,因此脚本会显示错误弹出消息并禁止提交具有 id="dataDaAForm"的表单

    function checkData(dataA) {
    dataDa = document.getElementById('dataDa').value;

    if(dataDa > dataA){
    // SHOW A POPUP ERROR MESSAGE
    // DISALLOW THE FORM SUBMIT
    }
    }

但是我真的不知道如何完成这个 JavaScript,我不知道是否存在更好的解决方案来完成这个任务。

最佳答案

很简单,Date实例可以直接比较。

function compareTime(time1, time2) {
return new Date(time1) > new Date(time2); // true if time1 is later
}

当您比较两个 Date 实例,或者相互减去另一个时,将在内部调用 valueOf 方法,将实例转换为时间戳(精确到毫秒).

关于javascript - 如何使用 JavaScript\JQuery 检查一个日期是否早于另一个日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27317437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com