javascript - 比较 HTML 表单中 Javascript 中的两个日期

标签 javascript html date comparison

我刚开始学习php,时不时需要一些JS函数。今天就是其中之一。我有一个 HTML 表单,询问用户的年龄,我想检查他们是否输入了与今天日期相比更大或相等的日期。这是 HTML 代码:

var borndate = document.getElementById("borndate");
var date = new Date()
	 
function comparedate(){
	if (borndate >= date.getFullYear()){
			alert("Looks like you are to young!");
                        return false;
	} else {
		return true;
	}
 }
<div class="form">
    	<form class="login-form" method="POST" action="main.php">
    		<input type="date" id="borndate" name="borndate" required="required"/>
                <input type="submit" value="submit" onclick="comparedate()"/>
    	</form>
    </div>

最佳答案

尝试一下:

// You were wrong comparing only the year with the full date
var todaysYear = new Date().getFullYear();

var borndate = document.getElementById("borndate");
var form = document.querySelector("form");
// Working with forms we want to catch submit (not click) events
form.addEventListener('submit', comparedate)

function comparedate(evt) {
  // preventing default behavior (form submit in this case)
  evt.preventDefault();

  // here we translate 'string' value back to 'date' & extract year
  var yearOfBirth = new Date(borndate.value).getFullYear()
  // an alternative would be to simply parse the year off the string itself

  if (yearOfBirth >= todaysYear) {
    alert("Looks like you are to young!");
  } else {
    // submitting form programmatically
    form.submit()
  }
}
<div class="form">
  <form class="login-form" method="POST" action="main.php">
    <input type="date" id="borndate" name="borndate" required="required" />
    <input type="submit" class="button" name="button" value="submit" />
  </form>
</div>

关于javascript - 比较 HTML 表单中 Javascript 中的两个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53186072/

相关文章:

c++ - 查找同一年中两个日期之间的天数 (c++)

javascript - 影响 d3.mouse 点的父 css 变换

javascript - 触发点击下部元素(z-index)

html - 背景附件不起作用

jQuery - 轻松授予选择框自动完成功能的任何好方法

javascript - 打印时如何用PDF替换网站

javascript - Angular 和 JavaScript : Date is 7 days old and is monday

javascript - 在 ng 上访问范围功能 - 单击导航栏

javascript - 表达 "Cannot GET/query"错误

date - SSRS 报告订阅参数(日期值)