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
;
}
查看全文
相关阅读:
百度--买帽子
网易--双核处理器
京东--通过考试
简单错误记录
链表中的倒数第k个结点
数值的整数次方
二进制中1的个数
TCP 三次握手
旋转数组的最小数字
用两个栈实现队列
原文地址:https://www.cnblogs.com/dahuzizyd/p/javascript_Date_Check.html
最新文章
开始使用 Vuejs 2.0 --- 组件间数据传递
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
[译]Ocelot
热门文章
[译]Ocelot
系统分析与设计——作业1
[前端]如何写一个水平导航栏?(浮动、inline-block+消除间距)
Web前端开发学习笔记(二)
Web前端开发学习笔记(一)
[LeetCode] 链表反转相关题目
[LeetCode]栈和队列数据结构的相互实现
[LeetCode]环链表相关的题目和算法
[LeetCode] 205 Isomorphic Strings
Apache+PHP+MySQL+phpMyAdmin环境搭建
Copyright © 2011-2022 走看看