Tech
News
Videos
Forums
Jobs
Books
Events
More
Interviews
Live
Learn
Training
Career
Members
Blogs
Challenges
Certification
Contribute
Article
Blog
Video
Ebook
Interview Question
Collapse
Feed
Dashboard
Wallet
Learn
Achievements
Network
Rewards
SharpGPT
Premium
Contribute
Article
Blog
Video
Ebook
Interview Question
Register
Login
Check for Valid Date using JavaScript
WhatsApp
Ivin Raj S
4y
6
k
0
1
25
Blog
Check for valid date using JavaScript. below is the full code.
<
head
id
=
"Head1"
runat
=
"server"
>
<
title
>
Untitled Page
</
title
>
<
script
language
=
"javascript"
type
=
"text/javascript"
>
// Declaring valid date character, minimum year and maximum year
var
dtCh
=
"/"
;
var
minYear
=
1900
;
var
maxYear
=
2100
;
function isInteger(s) {
var i;
for (
i
=
0
; i
<
s.length
; i++) {
// Check that current character is number.
var
c
=
s
.charAt(i);
if (((c
<
"0") || (c
>
"9"))) return false;
}
// All characters are numbers.
return true;
}
function stripCharsInBag(s, bag) {
var i;
var
returnString
=
""
;
// Search through string's characters one by one.
// If character is not in bag, append to returnString.
for (
i
=
0
; i
<
s.length
; i++) {
var
c
=
s
.charAt(i);
if (bag.indexOf(c) == -1) returnString += c;
}
return returnString;
}
function daysInFebruary(year) {
// February has 29 days in any year evenly divisible by four,
// EXCEPT for centurial years which are not also divisible by 400.
return (((year %
4
== 0) && ((!(year %
100
== 0)) || (year %
400
== 0))) ? 29 : 28);
}
function DaysArray(n) {
for (var
i
=
1
; i
<
= n; i++) {
this[i] = 31
if (
i
== 4 ||
i
== 6 ||
i
== 9 ||
i
== 11) { this[i] = 30 }
if (
i
== 2) { this[i] = 29 }
}
return this
}
function isDate(dtStr) {
var
daysInMonth
=
DaysArray
(12)
var
pos1
=
dtStr
.indexOf(dtCh)
var
pos2
=
dtStr
.indexOf(dtCh, pos1 + 1)
var
strMonth
=
dtStr
.substring(0, pos1)
var
strDay
=
dtStr
.substring(pos1 + 1, pos2)
var
strYear
=
dtStr
.substring(pos2 + 1)
strYr
=
strYear
if (strDay.charAt(0) == "0" && strDay.length
>
1)
strDay
strDay
= strDay.substring(1)
if (strMonth.charAt(0) == "0" && strMonth.length
>
1)
strMonth
strMonth
= strMonth.substring(1)
for (var
i
=
1
; i
<
= 3; i++) {
if (strYr.charAt(0) == "0" && strYr.length
>
1)
strYr
strYr
= strYr.substring(1)
}
month
=
parseInt
(strMonth)
day
=
parseInt
(strDay)
year
=
parseInt
(strYr)
if (
pos1
== -1 ||
pos2
== -1) {
alert("The date format should be : mm/dd/yyyy")
return false
}
if (strMonth.length
<
1
|| month
<
1
|| month
>
12) {
alert("Please enter a valid month")
return false
}
if (strDay.length
<
1
|| day
<
1
|| day
>
31 || (
month
== 2 && day
>
daysInFebruary(year)) || day
>
daysInMonth[month]) {
alert("Please enter a valid day")
return false
}
if (strYear.length != 4 ||
year
== 0 || year
<
minYear
|| year
>
maxYear) {
alert("Please enter a valid 4 digit year between " + minYear + " and " + maxYear)
return false
}
if (dtStr.indexOf(dtCh, pos2 + 1) != -1 || isInteger(stripCharsInBag(dtStr, dtCh)) == false) {
alert("Please enter a valid date")
return false
}
return true
}
function ValidateForm() {
var dt;
dt
=
document
.getElementById('txtDate');
if (isDate(dt.value) == false) {
dt.focus()
return false
}
return true
}
</
script
>
</
head
>
<
body
>
<
form
id
=
"form2"
runat
=
"server"
>
<
div
>
<
asp:TextBox
ID
=
"txtDate"
runat
=
"server"
>
</
asp:TextBox
>
<
asp:Button
ID
=
"Button1"
runat
=
"server"
Text
=
"Button"
OnClientClick
=
"ValidateForm()"
/>
</
div
>
</
form
>
</
body
>
Check for Valid Date using JavaScript
Up Next
Birth Date Validation in JavaScript
Ebook Download
View all
JavaScript Interview Q & A
Read by 850 people
Download Now!
Learn
View all
Membership not found