Javascript判断时间日期输入是不是合法问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Javascript判断时间日期输入是不是合法问题相关的知识,希望对你有一定的参考价值。

函数如下,判断年,月,时,分,秒均正常,判断日期部分不正常(不管输入什么,包括空白,都不报错)
帮忙看下是不是Switch部分出了问题?

<script type="text/javascript">
function check()

if (document.form4.year.value < 2011 || document.form4.year.value > 2099)

alert("Wrong Year!");
return false;

if (document.form4.month.value< 1 || document.form4.month.value > 12)

alert("Wrong Month!");
return false;

switch(document.form4.month.value)

case 1,3,5,7,8,10,12:

if (document.form4.day.value < 1 || document.form4.day.value > 31)

alert("Wrong Day!");
return false;

break;

case 4,6,9,11:

if (document.form4.day.value < 1 || document.form4.day.value > 30)

alert("Wrong Day!");
return false;

break;

case 2:

if( document.form4.year.value % 400 == 0 || (document.form4.year.value % 100 != 0 && document.form4.year.value % 4 == 0))

if (document.form4.day.value < 1 || document.form4.day.value > 29)

alert("Wrong Day!");
return false;


else

if (document.form4.day.value < 1 || document.form4.day.value > 28)

alert("Wrong Day!");
return false;


break;

default:
break;


if (document.form4.hour.value < 0 || document.form4.hour.value > 23)

alert("Wrong Hour!");
return false;

if (document.form4.minute.value < 0 || document.form4.minute.value > 59)

alert("Wrong Minute!");
return false;

if (document.form4.sec.value < 0 || document.form4.sec.value > 59)

alert("Wrong Second!");
return false;


</script>

js switch case只能判断一个对象
可以改成:
var MM=document.form4.month.value;
switch(parseInt(MM))

case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
alert('a-'+MM);
break;
case 4:
case 6:
case 9:
case 11:
alert('b-'+MM);
break;
case 2:
alert('c-'+MM);
break;
default:
break;
参考技术A 怎么整这么麻烦啊。
直接var tmp = new Date(year,month,date,hour,minute,second);
然后判断tmp 是不是合法,就ok了啊。
参考技术B switch(document.form4.month.value)

case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:


if (document.form4.day.value < 1 || document.form4.day.value > 31)

alert("Wrong Day!");
return false;

break;

case 4:
case 6:
case 9:
case 11:

if (document.form4.day.value < 1 || document.form4.day.value > 30)

alert("Wrong Day!");
return false;

break;

case 2:

if( document.form4.year.value % 400 == 0 || (document.form4.year.value % 100 != 0 && document.form4.year.value % 4 == 0))

if (document.form4.day.value < 1 || document.form4.day.value > 29)

alert("Wrong Day!");
return false;


else

if (document.form4.day.value < 1 || document.form4.day.value > 28)

alert("Wrong Day!");
return false;


break;

default:
break;

用js实现:输入日期,判断输入日期是不是在当前日期第二天起的7天内,如果没有,提示正确的日期区间

比如:当前日期:2011-08-31,输入日期:2011-09-09,提示“输入日期只能在2011-09-01~2011-09-07”之间。当然这里的当前日期,输入日期,和正确的日期区间都是变化的。

参考技术A var d1, d2;//d1为当前日期,d2为输入日期
var dateInterval = 7*24*60*60*1000;//时间间隔毫秒数
if(Math.abs((Date.parse(d2)-Date.parse(d1))) > dateInterval)
alert("日期必须在。。。。");

return false;

参考技术B var d=new Date();
var d.getYears();

以上是关于Javascript判断时间日期输入是不是合法问题的主要内容,如果未能解决你的问题,请参考以下文章

java中怎么做到判断输入的日期是不是合法

java判断日期是不是合法

JavaScript函数调用经典例题

用js实现:输入日期,判断输入日期是不是在当前日期第二天起的7天内,如果没有,提示正确的日期区间

用c语言编程,接收年月日,判别是不是为合法日期。

java判断是不是是日期