js驗證日期格式
『壹』 js驗證日期格式mm-dd-yyyy,例如月份不要超過12
<!DOCTYPEHTML>
<html>
<head>
<metacharset="UTF-8"/>
<title>JS</title>
<STYLE>
</STYLE>
<scripttype="text/javascript">
window.onload=function()
{
vardate=newDate,year=date.getFullYear();
if(year%400==0||year%4==0&&year%100!=0)
{
alert('今年是閏年');
}
else
{
alert('今年不是閏年');
}
varreg=/^(0[1-9]|1[0-2])-(0[1-9]|[12]d|3[01])-[1-9]d{3}$/;
varstr="12-01-2011";
alert(reg.test(str));
str="13-01-2011";
alert(reg.test(str));
}
</script>
</head>
<body>
</body>
</html>
『貳』 JS怎樣驗證日期格式(yyyy-mm-dd)
functionstrToDate(str){
vartempStrs=str.split("");
vardateStrs=tempStrs[0].split("-");
varyear=parseInt(dateStrs[0],10);
varmonth=parseInt(dateStrs[1],10)-1;
varday=parseInt(dateStrs[2],10);
vartimeStrs=tempStrs[1].split("-");
varhour=parseInt(timeStrs[0],10);
varminute=parseInt(timeStrs[1],10)-1;
varsecond=parseInt(timeStrs[2],10);
vardate=newDate(year,month,day,hour,minute,second);
returndate;
}
『叄』 javascript中怎麼驗證日期格式為yyyy/mm/dd
function checkDate(theDate){
var reg = /^\d{4}-((0{0,1}[1-9]{1})|(1[0-2]{1}))-((0{0,1}[1-9]{1})|([1-2]{1}[0-9]{1})|(3[0-1]{1}))$/;
var result=true;
if(!reg.test(theDate))
result = false;
else{
var arr_hd=theDate.split("-");
var dateTmp;
dateTmp= new Date(arr_hd[0],parseFloat(arr_hd[1])-1,parseFloat(arr_hd[2]));
if(dateTmp.getFullYear()!=parseFloat(arr_hd[0])
|| dateTmp.getMonth()!=parseFloat(arr_hd[1]) -1
|| dateTmp.getDate()!=parseFloat(arr_hd[2])){
result = false
}
}
return result;
}
『肆』 求一js正則表達式驗證YYYY/MM/DD格式日期。
代碼如下:
/*日期驗證dd/mm/yyyy*/
functionisDate(str){
vardate=str;
varresult=date.match(/^([0]?[1-9]|[1|2][0-9]|[3][0|1])[/]([0]?[1-9]|[1][0-2])[/]([0-9]{4}|[0-9]{2})$/);
if(result==null)
returnfalse;
vard=newDate(result[3],result[2]-1,result[1]);
return(d.getFullYear()==result[3]&&(d.getMonth()+1)==result[2]&&d.getDate()==result[1]);
}
(4)js驗證日期格式擴展閱讀
java用正則表達式判斷輸入的日期格式為yyyy/MM/dd
publicstaticvoidmain(String[]args)throwsParseException{
Stringstr1="2012-05-15";
Stringstr2="2012/05/15";
if(zzbd(str1)){
System.out.println("str1havematch!");
}else{System.out.println("str1don'tmatch!");}
if(zzbd(str2)){
System.out.println("str2havematch!");
}else{System.out.println("str2don'tmatch!");}}
publicstaticbooleanzzbd(Strings)
{
Patternpattern=Pattern.compile(\d{4}/\d{2}/\d{2});
Matchermatcher=pattern.matcher(s);
if(matcher.find())
{
returntrue;
}else{
returnfalse;
}
}
}
『伍』 js判斷日期/時間格式是否有效
1短時間,形如(23:30:06)
functionisTime(str)
{
vara=str.match(/^(d{1,2})(:)?(d{1,2})2(d{1,2})$/);
if(a==null){alert('輸入的參數不是時間格式');returnfalse;}
if(a[1]>24||a[3]>60||a[4]>60)
{
alert("時間格式不對");
returnfalse
}
returntrue;
}
2.短日期,形如(2008-09-13)
functionstrDateTime(str)
{
varr=str.match(/^(d{1,4})(-|/)(d{1,2})2(d{1,2})$/);
if(r==null)returnfalse;
vard=newDate(r[1],r[3]-1,r[4]);
return(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}
3長時間,形如(2008-09-1323:30:06)
functionstrDateTime(str)
{
varreg=/^(d{1,4})(-|/)(d{1,2})2(d{1,2})(d{1,2}):(d{1,2}):(d{1,2})$/;
varr=str.match(reg);
if(r==null)returnfalse;
vard=newDate(r[1],r[3]-1,r[4],r[5],r[6],r[7]);
return(d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}
『陸』 如何用Javascript判斷輸入是否是日期格式
主要原理是把得到的年月日拼成字元串與客戶端輸入的做比較,如相等則對,否則錯。函數如下
:
function
checkdate(instring,fieldname)
{
var
tempdate;
var
a=new
date(instring);
var
y=a.getfullyear();
var
m=a.getmonth()+1;
var
d=a.getdate();
var
myday=y
+
"/"
+
m
+
"/"
+
d
if
(myday!=instring)
{
alert
"請為"+
fieldname
+"輸入一有效日期(yyyy/m/d/)。";
return
false;
}
return
true;
}
『柒』 java中Js驗證日期的正則表達式格式為:yyyy/MM/dd
^var result=data.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(10|12|0?[13578])(\/)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(11|0?[469])(\/)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(\/)(0?2)(\/)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(\/)(0?2)(\/)(29)$)|(^([3579][26]00)(\/)(0?2)(\/)(29)$)|(^([1][89][0][48])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][0][48])(\/)(0?2)(\/)(29)$)|(^([1][89][2468][048])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][2468][048])(\/)(0?2)(\/)(29)$)|(^([1][89][13579][26])(\/)(0?2)(\/)(29)$)|(^([2-9][0-9][13579][26])(\/)(0?2)(\/)(29)$))/);
將所有的(-)改成(\/)不就得了
我很久以前好像寫過一個和這差不多的正則
『捌』 js判斷用戶輸入日期格式對否
function isDate(dateString){
if(dateString.trim()=="")return true;
var r=dateString.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
if(r==null){
alert("請輸入格式正確的日期\n\r日期格式:yyyy-mm-dd\n\r例 如:2008-08-08\n\r");
return false;
}
var d=new Date(r[1],r[3]-1,r[4]);
var num = (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
if(num==0){
alert("請輸入格式正確的日期\n\r日期格式:yyyy-mm-dd\n\r例 如:2008-08-08\n\r");
}
return (num!=0);
}
註:返回類型是true或false
當為true時表示是時間格式