📄 checkdate.js
字号:
<!-- Begin
function checkdate(objName) {
var datefield = objName;
if (chkdate(objName) == false) {
datefield.select();
alert("That date is invalid.It like YYYY/MM/DD HH:MM:SS.");
datefield.focus();
return false;
}
else {
return true;
}
}
function chkdate(objName) {
var strDateTime;
var strDate;
var strTime;
var strDateTimeArray = new Array();
var strDateArray = new Array();
var strTimeArray = new Array();
var datefield = objName;
var strSeparatorArray = new Array("-","/");
var i;
var err = 0;
strDateTime = datefield.value;
if (strDateTime.length < 1) { return true;}
if (isEmpty(strDateTime)) { return false; }
strDateTime = Trim(strDateTime);
strDateTimeArray = strDateTime.split(" ");
if (strDateTimeArray.length == 1)
{
strDate = strDateTimeArray[0];
strTimeArray[0] = "00:00:00";
}
else if (strDateTimeArray.length == 2)
{
strDate = strDateTimeArray[0];
strTimeArray[0] = strDateTimeArray[1];
}
else
{
return false;
}
for (i = 0; i < strSeparatorArray.length; i++) {
if (strDate.indexOf(strSeparatorArray[i]) != -1) {
strDateArray = strDate.split(strSeparatorArray[i]);
break;
}
}
if (strDateArray.length != 3) {
return false;
}
strDateArray[3] = "0";
if (isDateFormat1(strDateArray))
{
strDate = convertDate(strDateArray)
}
else if (isDateFormat2(strDateArray))
{
strDate = convertDate(strDateArray)
}
else
{
return false;
}
if (!isLegalTime(strTimeArray))
{
return false;
}
datefield.value = strDate + " " + strTimeArray[0];
return true;
}
function LeapYear(intYear) {
if (intYear % 100 == 0) {
if (intYear % 400 == 0) { return true; }
}
else {
if ((intYear % 4) == 0) { return true; }
}
return false;
}
function doDateCheck(from, to) {
if (Date.parse(from.value) <= Date.parse(to.value)) {
alert("The dates are valid.");
}
else {
if (from.value == "" || to.value == "")
alert("Both dates must be entered.");
else
alert("To date must occur after the from date.");
}
}
function isDateFormat1(sDA)
{
/* sDA : String Date Array */
/* format1 : mm/dd/yyyy */
var strDay;
var strMonth;
var strYear;
strMonth = sDA[0];
strDay = sDA[1];
strYear = sDA[2];
if (isLegalDate(strDay,strMonth,strYear))
{
sDA[3] = "1"; //set format type
return true;
}
else
{
return false;
}
}
function isDateFormat2(sDA)
{
/* sDA : String Date Array */
/* format2 : yyyy-mm-dd */
var strDay;
var strMonth;
var strYear;
strYear = sDA[0];
strMonth = sDA[1];
strDay = sDA[2];
if (isLegalDate(strDay,strMonth,strYear))
{
sDA[3] = "2"; //set format type.
return true;
}
else
{
return false;
}
}
function isLegalDate(sDay,sMonth,sYear)
{
var strDay;
var strMonth;
var strYear;
var intday;
var intMonth;
var intYear;
strDay = sDay;
strMonth = sMonth;
strYear = sYear;
intday = parseInt(strDay, 10);
if (isNaN(intday)) {
err = 2;
return false;
}
intMonth = parseInt(strMonth, 10);
if (isNaN(intMonth)) {
err = 3;
return false;
}
if ((strYear.length!=2)&(strYear.length!=4)) { return false; }
intYear = parseInt(strYear, 10);
if (isNaN(intYear)) {
err = 4;
return false;
}
if (intMonth>12 || intMonth<1) {
err = 5;
return false;
}
if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intday > 31 || intday < 1)) {
err = 6;
return false;
}
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intday > 30 || intday < 1)) {
err = 7;
return false;
}
if (intMonth == 2) {
if (intday < 1) {
err = 8;
return false;
}
if (LeapYear(intYear) == true) {
if (intday > 29) {
err = 9;
return false;
}
}
else {
if (intday > 28) {
err = 10;
return false;
}
}
}
return true;
}
function convertDate(sDA)
{
/* sDA : String Date Array */
/* format1 ==> format2 */
var strDay;
var strMonth;
var strYear;
var strReturn;
if(sDA[3] == "1") // format1
{
strMonth = sDA[0];
strDay = sDA[1];
strYear = sDA[2];
if (strYear.length == 2 ) { strYear = "20" + strYear;}
if (strMonth.length < 2) { strMonth = "0" + strMonth;}
if (strDay.length < 2) { strDay = "0" + strDay;}
strReturn = strYear + "-" + strMonth + "-" + strDay ;
return strReturn;
}
else if(sDA[3] == "2")
{
strYear = sDA[0];
strMonth = sDA[1];
strDay = sDA[2];
if (strYear.length == 2 ) { strYear = "20" + strYear;}
if (strMonth.length < 2) { strMonth = "0" + strMonth;}
if (strDay.length < 2) { strDay = "0" + strDay;}
strReturn = strYear + "-" + strMonth + "-" + strDay ;
return strReturn;
}
else
{
return "";
}
}
function isLegalTime(sTimeA)
{
/* the time format like "hh:mm:ss" */
var sTime;
var strHour;
var strMinute;
var strSecond;
var intHour;
var intMinute;
var intSecond;
var sTA = new Array();
sTime = sTimeA[0];
if (sTime == null)
{
return false;
}
if (sTime == "")
{
return false;
}
if (sTime.indexOf(":") != -1) {
sTA = sTime.split(":");
if (sTA.length != 3) {
return false;
}
}
else
{
return false;
}
strHour = sTA[0];
strMinute = sTA[1];
strSecond = sTA[2];
if(strHour == ""){ strHour="00";}
if(strHour.length < 2){strHour = "0" + strHour;}
if(strMinute == ""){ strMinute = "00";}
if(strMinute.length < 2){strMinute = "0" + strMinute;}
if(strSecond == ""){ strSecond = "00";}
if(strSecond.length < 2){strSecond = "0" + strSecond;}
intHour = parseInt(strHour, 10);
if (isNaN(intHour)) {
return false;
}
if (intHour > 24 | intHour < 0)
{
return false;
}
intMinute = parseInt(strMinute, 10);
if (isNaN(intMinute)) {
return false;
}
if (intMinute > 60 | intMinute < 0)
{
return false;
}
intSecond = parseInt(strSecond, 10);
if (isNaN(intSecond)) {
return false;
}
if (intSecond > 60 | intSecond < 0)
{
return false;
}
sTimeA[0] = strHour + ":" + strMinute + ":" + strSecond;
return true;
}
function Trim(s) //return String.
{
var strTemp;
var strKeep;
strKeep = s;
strTemp = s;
do
{
strKeep = strTemp;
strTemp = strKeep.replace(" "," ");
}while(strKeep.length > strTemp.length)
var len = strKeep.length - 1;
var start = 0;
var end = len;
if (strKeep.charAt(0) == " ") { start = 1;}
if (strKeep.charAt(len) == " ") { end = len-1;}
s = strKeep.substring(start,end+1);
return s;
}
function isEmpty(s) //return boolean.
{
var ss;
var i;
i=0;
ss = s;
if(ss == "")
{
return true;
}
else
{
for(i=0; i<ss.length; i++)
{
if(ss.charAt(i)!=" ")
{break;}
}
if(i==(ss.length))
{
return true;
}
}
return false;
}
// End -->
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -