<!DOCTYPE html>
<html>
<head>
<title> ΚΡΑΤΗΣΕΙΣ</title>
<link REL="STYLESHEET" TYPE="TEXT/CSS " HREF="style.css">
<style>
</style>
</head>
<body class="mybackroundcolor">
ΑΦΙΞΗ:
<input type="date" name="date1" id="date1" >
</br>
ΑΝΑΧΩΡΗΣΗ:
<input type="date" name="date2" id="date2" >
</br>
<button type="button" onclick="fdate()">Click Me!</button>
<script>function fdate(){
var k = document.getElementById("date1");
var l = document.getElementById("date2");
if(k.getTime() > l.getTime()){
alert("impossible");}
}
</script>
</body>
</html>
我的功能有什么问题?我想使用getTime()将mm / dd / yyyy形式的日期转换为数字并进行比较。
答案 0 :(得分:0)
输入字段的值不会自动转换为日期对象
var k = document.getElementById("date1"); //k is a string
var l = document.getElementById("date2"); //l is a string
使用valueAsNumber
var k = new Date(document.getElementById("date1").valueAsNumber);
var l = new Date(document.getElementById("date2").valueAsNumber);
答案 1 :(得分:-2)
你应该拿一个值来得到约会。现在你正在比较两个HTML 输入。我还会检查输入是否实际上是一个日期
<!DOCTYPE html>
<html>
<head><title> ΚΡΑΤΗΣΕΙΣ</title>
<link REL="STYLESHEET" TYPE="TEXT/CSS ">
<style>
</style>
</head>
<body class="mybackroundcolor">
ΑΦΙΞΗ:<input type="date" name="date1" id="date1" ></br>
ΑΝΑΧΩΡΗΣΗ:<input type="date" name="date2" id="date2" ></br>
<button type="button" onclick="fdate()">Click Me!</button>
<script>
function fdate(){
var k = document.getElementById("date1").value;
var l = document.getElementById("date2").value;
console.log(l)
if (typeof k.getTime === 'function' || typeof l.getTime === 'function' ) {
if (k.getTime() > l.getTime()) alert("impossible");
} else {
console.log('wrong date')
}
}
</script>
</body>
</html>