日期:2014-05-16 浏览次数:20384 次
function myIsDate(mystring) {//--BOF var mystring, myresult ; var mystring = new Date(mystring); isNaN(mystring)? myresult=false : myresult=true ; return myresult ; //--EOF } //我的测试 alert(IsDate('2009/10/10')); //true alert(IsDate('2010/07/00')); //true alert(IsDate('2009/02/30')); //true alert(IsDate('200k/10/10')); //false alert(IsDate('2009/13/10')); //true alert(IsDate('200k-10-10')); //false //失败
function isDate (value) { return (!isNaN (new Date (value).getYear () ) ) ; } //我的测试 alert(IsDate('2009/10/10')); //true alert(IsDate('2010/07/00')); //true alert(IsDate('2009/02/30')); //true alert(IsDate('200k/10/10')); //false alert(IsDate('2009/13/10')); //true alert(IsDate('200k-10-10')); //false //失败
// 这个可以,稍微改改,加上匹配'2010-01-10'就好了。 // ****************************************************************** // This function accepts a string variable and verifies if it is a // proper date or not. It validates format matching either // mm-dd-yyyy or mm/dd/yyyy. Then it checks to make sure the month // has the proper number of days, based on which month it is. // The function returns true if a valid date, false if not. // ****************************************************************** function isDate(dateStr) { var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/; var matchArray = dateStr.match(datePat); // is the format ok? if (matchArray == null) { alert("Please enter date as either mm/dd/yyyy or mm-dd-yyyy."); return false; } month = matchArray[1]; // p@rse date into variables day = matchArray[3]; year = matchArray[5]; 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 IsDate(dateval){ var arr = new Array(); if(dateval.indexOf("-") != -1){ arr = dateval.toString().split("-"); }else if(dateval.indexOf("/") != -1){ arr = dateval.toString().split("/"); }else{ return false; } //yyyy-mm-dd || yyyy/mm/dd if(arr[0].length==4){ var date = new Date(arr[0],arr[1]-1,arr[2]); if(date.getFullYear()==arr[0] && date.getMonth()==arr[1]-1 && date.getDate()==arr[2]){ return true; } } //dd-mm-yyyy || dd/mm/yyyy if(arr[2].length==4){ var date = new Date(arr[2],arr[1]-1,arr[0]); if(date.getFullYear()==arr[2] && date.getMonth()==arr[1]-1 && date.getDate()==arr[0]){ return true; } } //mm-dd-yyyy || mm/dd/yyyy if(arr[2].length==4){ var date = new Date(arr[2],arr[0]-1,arr[1]); if(date.getFullYear()==arr[2] && date.getMonth()==arr[0]-1 && date.getDate()==arr[1]){ return true; } } return false; } alert(IsDate('2009/10/10')); //true alert(IsDate('2010/07/00')); //false alert(IsDate('2009/02/30')); //false alert(IsDate('200k/10/10')); //false alert(IsDate('2009/13/10')); //false alert(IsDate('200k-10-10')); //false alert(IsDate('2000-02-29')) //true alert(IsDate('2100-02-29')) //true //就是你了
//匹配//yyyy-mm-dd || yyyy/mm/dd function