|
-
Aug 2nd, 2001, 07:24 AM
#1
Thread Starter
New Member
Javascrupt validation
Hallo there.
I have a form with several fields.
But i need to validate ONE field where the input is date and time:
---------------------
mm/dd/yyyy hh:mm:ss
---------------------
I'm running a little out of time.
Can someone please give some advice??
A URL is also welcome!
Thanks
-
Aug 2nd, 2001, 09:22 AM
#2
New Member
Shhhhh - Don't let on, but here it is
This is a date validation we use - don't tell anyone I gave this to you buddy!
var dt1 = document.all.item("txtField1");
dy = dt1.value.substr(0,2);
mn = dt1.value.substr(3,2);
yr = dt1.value.substr(6,4);
if (!ValidateDate(dy,mn,yr)){
alert("The date entered must 10 characters long and take the form of 06/04/2000");
dt1.select();
return;
}
function ValidateDate(dy,mn,yr){
var date = new Array(2);
date[0] = dy;
date[1] = mn;
date[2] = yr;
var j = 0;
if (date[0].substr(0,1) == '0')
date[0] = date[0].substr(1,1);
switch (parseFloat(date[1])) {
case 1:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 2:
if ((date[2] % 4.0) == 0){
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 29))
return false;
}else
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 28))
return false;
break;
case 3:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 4:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 30))
return false;
break;
case 5:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 6:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 30))
return false;
break;
case 7:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 8:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 9:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 30))
return false;
break;
case 10:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
case 11:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 30))
return false;
break;
case 12:
if ((parseInt(date[0]) < 1) || (parseInt(date[0]) > 31))
return false;
break;
default:
return false;
break;
}
if ((parseInt(date[2]) < 0) || (isNaN(date[2])) || (date[2].length ==0))
return false;
else
return true;
}
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|