On other thing can you use client side vbScript (IE Only)?
Main Topics
Browse All Topicswhat I am trying to do is replace a field value and set it to blank if the value isn't a date... I have tried several things without any success.
function validDate(fieldValue,field
if (fieldValue.length > 0) {
var d = fieldValue;
var fieldName = fieldName;
d = new Date(d);
if (isNaN(d))
alert ('Sorry, not in a valid date format');
//alert (fieldName)
fieldName = '';
}
}
where fieldName = document.forms.n_PCOrigina
thanks
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Here is a script that I found.
/*
Script: dateValidate.js
Source: http://www.shastrynetcom/
Author: Subramanya Shastry Y V H
shastry@email.com
Description: Generic Date validation routine.
Usage: Include this file with script tag and pass the date value to be
validated to the function 'isProperDate()'
This file can be included with the script tag
<script src="dateValidate.js"></sc
It is my advice that you include this file directly from my
site, so that you get to use the script which is up-to-date.
You can do so with the script tag
<script src="http://www.shastrynet
Copyright: This script can be freely used with or without modifications.
The author cannot be held responsible for any possible mistakes
in the coding. It is the responsibility of the user to make
sure that the code is working fine and is bug-less.
This Script cannot be distributed without prior permission from
the author.
*/
//------------------------
// function: isProperDate
// Function to tell whether the given date is valid or not
// This function expects date in the format of mm/dd/yyyy or mm/dd/yy
// or mm-dd-yyyy or mm-dd-yy
//------------------------
function isProperDate(argDate) {
var tmpDay = getDay(argDate)
var tmpMon = getMonth(argDate)
var tmpYear = getYear(argDate)
return isProperDay(tmpDay, tmpMon, tmpYear) && isProperMonth(tmpMon) && isProperYear(tmpYear)
}
//------------------------
// function: isWhiteSpace
// Function to check whether the given argument consists of charactes other
// than a space and \t
//------------------------
function isWhiteSpace(argWhiteSpace
argWs = argWhiteSpace.toString()
for (var intI=0; intI < argWs.length; intI++)
if (argWs.charAt(intI) != ' ' && argWs.charAt(intI) != '\t')
return false
return true
}
//------------------------
// function: isLeapYear
// Function to tell, whether the given year is leap year or not
//------------------------
function isLeapYear(argYear) {
return ((argYear % 4 == 0) && (argYear % 100 != 0)) || (argYear % 400 == 0)
}
//------------------------
// function: daysInMonth
// Function to return the maximum number of days in a given month of a
// given year
//------------------------
function daysInMonth(argMonth, argYear) {
switch (Number(argMonth)) {
case 1: // Jan
case 3: // Mar
case 5: // May
case 7: // Jul
case 8: // Aug
case 10: // Oct
case 12: // Dec
return 31;
break;
case 4: // Apr
case 6: // Jun
case 9: // Sep
case 11: // Nov
return 30;
break;
case 2: // Feb
if (isLeapYear(argYear))
return 29
else
return 28
break;
default:
return 0;
}
}
//------------------------
// function: getDateSeparator
// Function to return the date separator
// This function expects date in the format of mm/dd/yyyy or mm/dd/yy
// or mm-dd-yyyy or mm-dd-yy
//------------------------
function getDateSeparator(argDate) {
// Are there invalid separators?
if ((argDate.indexOf('-') > 0) && (argDate.indexOf('/') > 0))
return ' '
if (argDate.indexOf('-') > 0)
return '-'
else
if (argDate.indexOf('/') > 0)
return '/'
else
return ' '
}
//------------------------
// function: getYear
// Function to return the year part of the given date.
// This function expects date in the format of mm/dd/yyyy or mm/dd/yy
// or mm-dd-yyyy or mm-dd-yy
//------------------------
function getYear(argDate) {
var dateSep = getDateSeparator(argDate)
if (dateSep == ' ')
return 0
if(argDate.split(dateSep).
return argDate.split(dateSep)[2]
else
return 0
}
//------------------------
// function: getMonth
// Function to return the month part of the given date.
// This function expects date in the format of mm/dd/yyyy or mm/dd/yy
// or mm-dd-yyyy or mm-dd-yy
//------------------------
function getMonth(argDate) {
var dateSep = getDateSeparator(argDate)
if (dateSep == ' ')
return 0
if(argDate.split(dateSep).
return argDate.split(dateSep)[0]
else
return 0
}
//------------------------
// function: getDay
// Function to return the day part of the given date.
// This function expects date in the format of mm/dd/yyyy or mm/dd/yy
// or mm-dd-yyyy or mm-dd-yy
//------------------------
function getDay(argDate) {
var dateSep = getDateSeparator(argDate)
if (dateSep == ' ')
return 0
if(argDate.split(dateSep).
return argDate.split(dateSep)[1]
else
return 0
}
//------------------------
// function: isProperDay
// Function to tell whether the given day of the given month is valid
//------------------------
function isProperDay(argDay, argMonth, argYear) {
if ((isWhiteSpace(argDay)) || (argDay == 0))
return false
if ((argDay > 0) && (argDay < daysInMonth(argMonth, argYear) + 1))
return true
else
return false
}
//------------------------
// function: isProperMonth
// Function to tell whether the given month is a valid one
//------------------------
function isProperMonth(argMonth) {
if ((isWhiteSpace(argMonth)) || (argMonth == 0))
return false
if ((argMonth > 0) && (argMonth < 13))
return true
else
return false
}
//------------------------
// function: isProperYear
// Function to tell whether the given Year is a valid one
//------------------------
function isProperYear(argYear) {
if ((isWhiteSpace(argYear)) || (argYear.toString().length
return false
switch (argYear.toString().length
case 1:
if (argYear >=0 && argYear < 10)
return true
else
return false
case 2:
if (argYear >=0 && argYear < 100)
return true
else
return false
case 4:
if (((argYear >=1900) || (argYear >=2000)) && ((argYear < 3000) || (argYear < 2000)))
return true
else
return false
default:
return false
}
}
function isValidDate(dateStr)
{
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})
// To require a 4 digit year entry, use this line instead:
// var datePat = /^(\d{1,2})(\/|-)(\d{1,2})
var matchArray = dateStr.match(datePat); // is the format ok?
if (matchArray == null)
{
// alert("Date is not in a valid format.")
return false;
}
month = matchArray[3]; // parse date into variables
day = matchArray[1];
year = matchArray[4];
if (month < 1 || month > 12)
{ // check month range
// alert("Month must be between 1 and 12.");
return false;
}
if (day < 1 || day > 31)
{
// alert("Day must be between 1 and 31.");
return false;
}
if ((month==4 || month==6 || month==9 || month==11) && day==31)
{
// alert("Month "+month+" doesn't have 31 days!")
return false
}
if (month == 2)
{ // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day>29 || (day==29 && !isleap))
{
// alert("February " + year + " doesn't have " + day + " days!");
return false;
}
}
return true; // date is valid
}
function validDate(field)
{
if(!isValidDate(field.valu
{
alert ('Sorry, not in a valid date format');
field.value="";
}
}
Now call it like:
<input type=text onChange="validDate(this)"
regards,
CJ
if (!isValidDate('30/02/2000'
Per recommendation, force-accepted.
Netminder
CS Moderator
CJ_S: points for you at http://www.experts-exchang
Business Accounts
Answer for Membership
by: CUTTHEMUSICPosted on 2001-07-24 at 17:17:35ID: 6315462
I found this. rg/script/ 1.htm
http://www.developer.irt.o
I'll try to put it into a function that corresponds to your question although the link might be a good start.