zoukankan
html css js c++ java
如何用javascript判断录入的日期是否合法
如何用javascript判断录入的日期是否合法
function
IsValidYear(psYear)
{
var
sYear
=
new
String(psYear);
if
(psYear
==
null
)
{
return
false
;
}
if
(isNaN(psYear)
==
true
)
{
return
false
;
}
if
(sYear
==
""
)
{
return
true
;
}
if
(sYear.match(
/
[
^
0
-
9
]
/
g)
!=
null
)
{
return
false
;
}
var
nYear
=
parseInt(sYear,
10
);
if
((nYear
<
0
)
||
(
9999
<
nYear))
{
return
false
;
}
return
true
;
}
function
IsValidMonth(psMonth)
{
var
sMonth
=
new
String(psMonth);
if
(psMonth
==
null
)
{
return
false
;
}
if
(isNaN(psMonth)
==
true
)
{
return
false
;
}
if
(sMonth
==
""
)
{
return
true
;
}
if
(sMonth.match(
/
[
^
0
-
9
]
/
g)
!=
null
)
{
return
false
;
}
var
nMonth
=
parseInt(sMonth,
10
);
if
((nMonth
<
0
)
||
(
12
<
nMonth))
{
return
false
;
}
return
true
;
}
function
IsValidDay(psDay)
{
var
sDay
=
new
String(psDay);
if
(psDay
==
null
)
{
return
false
;
}
if
(isNaN(psDay)
==
true
)
{
return
false
;
}
if
(sDay
==
""
)
{
return
true
;
}
if
(sDay.match(
/
[
^
0
-
9
]
/
g)
!=
null
)
{
return
false
;
}
var
nDay
=
parseInt(psDay,
10
);
if
((nDay
<
0
)
||
(
31
<
nDay))
{
return
false
;
}
return
true
;
}
function
IsValidDate(psYear, psMonth, psDay)
{
if
(psYear
==
null
||
psMonth
==
null
||
psDay
==
null
)
{
return
false
;
}
var
sYear
=
new
String(psYear);
var
sMonth
=
new
String(psMonth);
var
sDay
=
new
String(psDay);
if
(IsValidYear(sYear)
==
false
)
{
return
false
;
}
if
(IsValidMonth(sMonth)
==
false
)
{
return
false
;
}
if
(IsValidDay(sDay)
==
false
)
{
return
false
;
}
var
nYear
=
parseInt(sYear,
10
);
var
nMonth
=
parseInt(sMonth,
10
);
var
nDay
=
parseInt(sDay,
10
);
if
(sYear
==
""
&&
sMonth
==
""
&&
sDay
==
""
)
{
return
true
;
}
if
(sYear
==
""
||
sMonth
==
""
||
sDay
==
""
)
{
return
false
;
}
if
(nMonth
<
1
||
12
<
nMonth)
{
return
false
;
}
if
(nDay
<
1
||
31
<
nDay)
{
return
false
;
}
if
(nMonth
==
2
)
{
if
((nYear
%
400
==
0
)
||
(nYear
%
4
==
0
)
&&
(nYear
%
100
!=
0
))
{
if
((nDay
<
1
)
||
(nDay
>
29
))
{
return
false
;
}
}
else
{
if
((nDay
<
1
)
||
(nDay
>
28
))
{
return
false
;
}
}
}
else
if
((nMonth
==
1
)
||
(nMonth
==
3
)
||
(nMonth
==
5
)
||
(nMonth
==
7
)
||
(nMonth
==
8
)
||
(nMonth
==
10
)
||
(nMonth
==
12
))
{
if
((nDay
<
1
)
||
(
31
<
nDay))
{
return
false
;
}
}
else
{
if
((nDay
<
1
)
||
(
30
<
nDay))
{
return
false
;
}
}
return
true
;
}
查看全文
相关阅读:
【Linux】防火墙命令
【MySQL】mysql分组后重命名
【SpringBoot】全局配置Long转String,解决前端接收时精度丢失的问题
【VSCode】vscode运行命令时提示“因为在此系统上禁止运行脚本”
【Mybatis】mybatisplus代码生成器【逆向工程】搭配Lombok和swagger2
【Linux】赋予root权限
【MySQL】mysql模糊匹配多个字段
idea为新创建的类增加个人注释模板
【Linux】学习笔记:(一)常用命令大全
Navicat查看数据库的密码
原文地址:https://www.cnblogs.com/dahuzizyd/p/javascript_Date_Check.html
最新文章
记录算法:运营需求 要把 起点和终点相同的司机订单 合并到一起表示一条路线的多次接单记录
equals问题解答
WinForm 三态树
是否可以完全相信垃圾回收?.Net 托管资源 非托管资源 垃圾回收 的疑问。
laravel实现十几万数据直接浏览器导出csv文件 able
MySQL数据库使用mysqldump导出数据详解 able
Windows8常用快捷键
Regions inside DataTemplates in Prism v4 using a region behavior
ListViewItem HightLight
C#异步编程模式IAsyncResult概述
热门文章
异步上传
资源
跨程序集共享资源
C#调用C++dll
Qt5启动画面
Qt5中生成和使用静态库
【Docker】poi本地正常导出,但是线上部署后报缺少字体的错误解决方法
【Linux】学习笔记:(二)用户和组群账户管理
【Linux】学习笔记:(三)软件包管理(更新中)
【VSCode】常用快捷键 [个人记录]
Copyright © 2011-2022 走看看