function submit(){
var date1=input[type="date"];
var date2=console.log(Date());
var Datediff= date2 - date1
alert(Datediff)
}
<form onsubmit="submit">
<input type="date" />
<input type="submit" />
</form>
如您所见,我是一位初学者。尝试自己做所有事情,但没有任何效果,需要帮助。
答案 0 :(得分:2)
function alertDayDiff() {
var input = document.getElementById('date');
var date1 = new Date(input.value);
var date2 = new Date();
var timediff = Math.abs(date2 - date1);
var daydiff = Math.floor(timediff / (1000 * 3600 * 24));
alert(daydiff);
}
<form onsubmit="alertDayDiff(); return false;">
<input type="date" id="date" />
<input type="submit" />
</form>
答案 1 :(得分:0)
您的语法很混乱……您需要先学习基础知识,然后再尝试做一些有用的基础知识。
首先,在表单事件中,您需要调用插入括号的函数:<form onsubmit="submit()">
,但是显然“ submit”是保留字,因此您需要使用其他函数名。
此行完全错误:var date1=input[type="date"];
这也是错误的,因为console.log不会将值返回到“ date2”:var date2=console.log(Date());
,而Date()不是您想要的。您需要一个新的日期实例:“ new Date()”
我在以下示例中进行了一些修复。将每一行与您的代码进行比较,并查看语法差异:
function validateForm() {
var date1 = document.querySelector('#myDate').valueAsDate;
var date2 = new Date();
console.log('date1', date1);
console.log('date2', date2);
var dateDiff = date2 - date1;
console.log('dateDiff ', dateDiff );
alert(dateDiff);
return false;
}
<form onsubmit="return validateForm()">
<input type="date" id="myDate" />
<button type="submit">Submit</button>
</form>