如何验证用户输入的日期,以确保输入的日期不超过接受的限制(例如,2月的日期不超过29,4月、6月和11月的30,以及1月、3月、5月、7月、8月、10月和12月的31 )以及不超过12的月份。
我尝试添加条件,而且&简单地说对我不起作用,因为它总是返回一个错误。
我的javascript函数如下:
function parseDate(s)
{
var dP = s.split("/");
var date = new Date(dP[2], (dP[1] - 1), dP[0]);
var dateStrParts = date.toString().split(" ");
return (date.getDate() + ", " + dateStrParts[1] + " " + dateStrParts[3]);
}我目前有一个onchange,它将从用户输入将月号转换为月名,我相信我需要添加另一个函数来进行验证。
因此,如何编写验证函数,以及如何将其添加到onchange事件中?
日期没有提交按钮。
谢谢!
发布于 2014-06-09 08:34:26
使用isNaN检查Date.parse()
function parseMyDate(s){
if (isNaN(Date.parse(s))){
alert("Your input has no logic at all");
return;
}
var dateParts = s.split("/");
var date = new Date(dateParts[2], (dateParts[1] - 1), dateParts[0]);
var dateStrParts = date.toString().split(" ");
return (date.getDate() + ", " + dateStrParts[1] + " " + dateStrParts[3]);
}
console.log(parseMyDate("31/02/2014"));编辑 JSFiddle演示
https://stackoverflow.com/questions/24115717
复制相似问题