在页面上使用input 日期输入框时,不想显示为默认的 mm/dd/yyyy,而是默认填充当前日期,先看原图
html 代码
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<style>
form {
margin: 50px;
}
</style>
</head>
<body>
<form class="form-horizontal">
<div class="form-group">
<label for="" class="col-sm-3 control-label">选择日期</label>
<div class="col-sm-4">
<input type="date" class="form-control">
</div>
</div>
<div class="form-group">
<label for="" class="col-sm-3 control-label">选择日期</label>
<div class="col-sm-4">
<input type="date" class="form-control">
</div>
</div>
</form>
</body>
</html>
那么有没有一种简单的方法可以直接将 new Date() 转化为我们想要的日期格式呢,而不是通过一个日期格式化的方法来解决这个问题
答案是有的, 该方法就是使用 valueAsDate, 顾名思义就知道它是干什么的了, 这个属性在MDN上有提过
MDN: input date
那么具体代码如何,看下面
html 代码
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<style>
form {
margin: 50px;
}
</style>
</head>
<body>
<form class="form-horizontal">
<div class="form-group">
<label for="" class="col-sm-3 control-label">选择日期</label>
<div class="col-sm-4">
<input type="date" class="form-control date-picker">
</div>
</div>
<div class="form-group">
<label for="" class="col-sm-3 control-label">选择日期</label>
<div class="col-sm-4">
<input type="date" class="form-control date-picker">
</div>
</div>
</form>
<script>
var defaultDate = document.querySelectorAll('.date-picker');
for (var i = 0; i<defaultDate.length; i++) {
defaultDate[i].valueAsDate = new Date();
}
</script>
</body>
</html>