我正在写一个html文件来接受日期输入。我使用日期选择器来选择日期,而不是从日期选择器中选择日期,如果用户在文本字段中手动键入日期为ex:09/31/16我需要向用户提供日期无效的信息日期。但是我在下面给出的代码是在2016年10月1日创建日期对象时。如果我将日期转换为ISOString,它将显示为9月30日。但我想要的输出是将消息作为"无效的日期"显示给浏览器。请帮助我,因为我必须解决这个问题,因为我将在开发期间在许多地方使用日期。谢谢。
<html lang="en">
<head>
<meta charset="utf-8">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script>
$(function () {
$("#datepicker").datepicker();
});
function verifyDate() {
var d = new Date($("#datepicker").val());
console.log(d);
var d = new Date($("#datepicker").val()).toISOString();
console.log(d);
}
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker" onblur="verifyDate()"></p>
</body>
</html>
答案 0 :(得分:0)
如果您想获得用户选择的日期,您的代码应该是:
<html lang="en">
<head>
<meta charset="utf-8">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.10.2/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script>
<script>
$(function() {
$("#datepicker").datepicker({
onSelect: function(){
var dateValue = $(this).datepicker('getDate');
console.log(dateValue);
}
});
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker" ></p>
</body>