如何比较从 JSP 捕获的 java 脚本中的 2 个日期
How to compare 2 dates in java script captured from JSP ?
** 我无法使用 getTime() 转换用户选择的日期。我是java脚本的初学者。我从用户那里获取日期作为开始和结束时间,应该能够解析它们并了解它们之间的差异。是否有一个 ay 来获取整个日期并解析,或者我们需要拆分日期? **
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
<title>Test</title>
<script type="text/javascript" >
function check_date(){
var start_date=document.getElementsByName("Start_Date");
var End_date=document.getElementsByName("End_Date");
var startdate_2=start_date.item(0).value;
alert(startdate_2.getTime());*crashes here*
var diffDays = (End_date - startdate_2)/(24*3600*1000);
if ( diffDays > 14 )
{alert("You entrered invalid date. Please repeat again");
return false;
}
else
{alert ("Will Proceed ");
return true;}
}
</script>
</head>
<body>
<form ENCTYPE="multipart/form-data" ACTION="servlet1" METHOD=GET>
<center>
<fieldset>
<label for="Start_Date">Start_Date</label>
<input type="date" id="Start_Date" name="Start_Date" > <br> </br>
<label for="END_Date">END_Date</label>
<input type="date" name="End_Date" id="End_Date"> <br> </br>
<input type="submit" value="Submit" onclick="return check_date();"> </input>
</fieldset>
</center>
</form>
</body>
</html>
Start_Date
的 value
属性仍以字符串形式返回,即使它是date
输入。因此,您需要在调用 getTime()
之前将其包装在 new Date()
中,将其转换为 Date 。
此外,由于您的输入已设置id
,因此您可以稍微简化一些事情,只需使用document.getElementById
:
function check_date() {
// start_date and End_date now point straight at the correct boxes.
var start_date = document.getElementById("Start_Date");
var End_date = document.getElementById("End_Date");
// convert both entries to a Date object from the string value
var startdate_2 = new Date(start_date.value);
var enddate_2 = new Date(End_date.value);
alert(startdate_2.getTime());
var diffDays = (enddate_2 - startdate_2)/(24*3600*1000);
if ( diffDays > 14 )
{
alert("You entered an invalid date. Please repeat again");
return false;
}
else
{
alert ("Will Proceed");
return true;
}
}
工作小提琴
你想把这两个字符串都转换为 Javascript Date 对象。 看看之前的答案:用 JavaScript 比较两个日期
相关文章:
- 借助asp.net验证或java脚本对多个文本进行验证
- Java脚本时间添加
- 如何将字符串值从php页面发送到java脚本页面
- java脚本在Chrome和其他浏览器中对LocaleTimeString的不同行为
- Java脚本将URL转换为已保存的URL时出错
- 如何使用Java脚本创建提交按钮's的拖放功能
- 如何在java脚本中验证手机号码
- 使用java脚本更改onClick事件中菜单选项卡的颜色
- 无限的java脚本循环
- 无法在java脚本中调用图像的点击事件函数
- 如何在java中获得浏览器的java脚本控制台输出
- 我的html表单无法验证.请参阅代码片段中的html代码和java脚本
- java脚本的数学方程显示错误的答案
- AngularJS:如何使用java脚本函数更改跨度的ng-show条件
- 如何在java脚本中传递对象数组
- java脚本网站最佳实践
- 无法将java脚本函数与Panel'绑定;s OnLoad事件
- java安全doPrivileged方法如何阻止任意脚本
- Java脚本访问Location标头's OAuth 2的URL片段
- 在 HTML 上运行两个脚本(Java 脚本)