JS计算EasyUI控件两个时间差的问题
计算两个时间差的问题
function getDateIsMatching(){ var pactbegindate=$("#loanbegindate").datetimebox("getValue"); var pactenddate=$("#loanenddate").datetimebox("getValue"); var loanterm=$("#loanterm").val(); var loantermtype=$("#loantermtype").val(); var loantermtypestr; //将日期字符串分隔为数组,数组元素分别为年.月.日 var date1Str = pactbegindate.split("-"); //根据年 . 月 . 日的值创建Date对象 var date1Obj = new Date(date1Str[0],(date1Str[1]-1),date1Str[2]); //将日期字符串分隔为数组,数组元素分别为年.月.日 var date2Str = pactenddate.split("-"); //根据年 . 月 . 日的值创建Date对象 var date2Obj = new Date(date2Str[0],(date2Str[1]-1),date2Str[2]); var year1 = date1Obj.getFullYear(); var year2 = date2Obj.getFullYear(); //相差的年数 var differYears =year2-year1; var month1 = date1Obj.getMonth(); var month2 = date2Obj.getMonth(); //相差的月数 var differMonths=differYears*12+(month2-month1); var day1=parseInt(date1Str[2]); var day2=parseInt(date2Str[2]); //相差的天数 var differDays=day2-day1; if(null!=loantermtype&&loantermtype==1){ loantermtypestr="年"; if (loanterm!=differYears) { alert("起止日期相差的年数"+differYears+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!"); return false; } if (month2!=month1) { alert("请检查起止日期的月份是否相等!"); return false; } //大于等于就正确 if (differDays<0) { alert("请检查起止日期的'天数'是否正确!"); return false; } return true; }else if(null!=loantermtype&&loantermtype==2){ loantermtypestr="个月"; if (loanterm!=differMonths) { alert("起止日期相差的月数"+differMonths+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!"); return false; } //大于等于就正确 if (differDays<0) { alert("请检查起止日期的'天数'是否正确!"); return false; } return true; }else{ var t1 = date1Obj.getTime(); var t2 = date2Obj.getTime(); var dateTime = 1000*60*60*24; //每一天的毫秒数 var minusDays = Math.floor(((t2-t1)/dateTime));//计算出两个日期的天数差 var days = Math.abs(minusDays);//取绝对值 loantermtypestr="天"; if (loanterm!=days) { alert("起止日期相差的天数"+days+loantermtypestr+",合同期限:"+loanterm+loantermtypestr+",请确认起止日期是否正确!"); return false; } return true; } }
分类:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)