为了账号安全,请及时绑定邮箱和手机立即绑定

如何比较两个全年日期

如何比较两个全年日期

慕的地10843 2021-09-30 10:17:35
我的示例中的想法是允许用户仅选择to输入中已选择的from输入中的年份(具有相同的年份和日期输入)。这里的问题是,当我们使用日期选择器时它工作正常,但是,当我们手动将日期输入到“to”输入中时,它会比较年份的第一个数字***8/04/14,我想等到用户完成完整的日期示例2018/04/14然后我提醒OK。我实际的代码,如果我拿这个例子:from = 2018/04/14,to = 2018/05/29,所以比较2018/04/14有from = 8/05/29在,它警示OK 8的2018和不完整的一年。$("#from").on("change", function() {    year();    var from = $("#from").val();    if (from) {      var maxYear = new Date(from).getFullYear();      $("#to").attr("max", maxYear+"-12-31");      $("#to").attr("min", maxYear+"-01-01");    }});$("#to").on("change", function(){    year();});function year() {    var from = $("#from").val();    var to = $("#to").val();    if(from && to && new Date(from).getFullYear() != new Date(to).getFullYear()) {        $("#to").val("");        alert("OK");    }}<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><div class="from">from</div><input id="from" type="date"><div class="to">to</div><input id="to" type="date">
查看完整描述

2 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

尝试使用


$("#to").on("blur", function(){

   year();

});

只有在输入失去焦点后才应该激活检查。


查看完整回答
反对 回复 2021-09-30
?
FFIVE

TA贡献1797条经验 获得超6个赞

Change 事件在输入更改时触发,如果您想捕获用户事件或键事件,您应该尝试将所有“更改代码”声明为独立函数并添加另一个事件侦听器。

也许可以blurkey down将按照您的意愿工作,但存在很多事件:https : //www.w3schools.com/jsref/dom_obj_event.asp


查看完整回答
反对 回复 2021-09-30
  • 2 回答
  • 0 关注
  • 161 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信