日期:2014-05-18  浏览次数:20701 次

我想做一个JS的判断,是判断输入日期格式.要求是以这个格式进行输入####-##-##,在提交的时候进行判断的.另外如果他输入的比如是2002-3-4要
帮一下小弟不胜感激.

------解决方案--------------------
java.util.Calendar;

String strMonth,strDate,period;
int month,date;
Calendar now;
now= Calendar.getInstance();
month=now.get(Calendar.MONTH)+1;
if (month <10) strMonth= "0 "+month;
else strMonth= " "+month;
if (date <10) strDate= "0 "+date;
else strDate= " "+date;
period=now.get(Calendar.YEAR)+strMonth+strDate;
------解决方案--------------------
楼上的不是写的很清楚么。你在js里写个带参的方法把这段代码放进克。得到你需要验证的时间做为参数传递就可以了嘛。。
------解决方案--------------------
用正则表达式
/\d[4]-\d[1-2]-\d[1-2]/
------解决方案--------------------
function checkDate(argDate)
{
var i = 0;
var date = " ";
if (argDate != null && argDate.length > 0)
{
}
else
{
return true;
}
if (argDate.length < 10)
{
alert( "日期输入不正确。输入格式为: 'yyyy-mm-dd ' ");
return false;
}
for (i = 0; i < argDate.length; i++ )
{

if (argDate.substring(i,i+1)!= '- ')
{
date = date+argDate.substring(i,i+1);
}
}

if (date.length < 8)
{
alert( "日期输入不正确。输入格式为: 'yyyy-mm-dd ' ");
return false;
}
else
{

if (isAllNumber(date)==false)
{
alert( "日期输入不正确。输入格式为: 'yyyy-mm-dd ' ");
return false;
}
else
{
var days = "31,28,31,30,31,30,31,31,30,31,30,31 ";
var year = parseInt(date.substring(0,4));
// 月


var month = date.substring(4,6);
// 日
var day = date.substring(6,8);
// 闰年日
if ((year%4 == 0 && year%100 != 0) || year % 400 == 0){
days= "31,29,31,30,31,30,31,31,30,31,30,31 ";
}
// 月CHECK
if (month < "01 " || month > "12 "){
alert( "日期输入不正确。33输入格式为: 'yyyy-mm-dd ' ");
return false;
}

if (day < "01 " || day > days.substring((month-1)*3,month*3-1)){
alert( "日期输入不正确。输入格式为: 'yyyy-mm-dd ' ");
return false;
}

}
}
return true;
}

没有补0功能,自己看着加加吧.
------解决方案--------------------
有个梅花雨的js控件,直接用就行了
------解决方案--------------------
var d = "2006-5-6 ";
var r = /\b(\d+)\b-(\d+)\b-(\d+)\b/g;

if(!r.test(d))alert(false);
if(RegExp.$2.length ==1)d = d.replace( "- "+RegExp.$2+ "- ", "-0 "+RegExp.$2+ "- ");
if(RegExp.$3.length ==1)d = d.replace( "- "+RegExp.$3, "-0 "+RegExp.$3);

alert(d);
------解决方案--------------------
我遇到过这个问题,以下是我的JAVASCRIPT校验语句

var m=myform.birthday.value.split( "- ");
if( (m[0].length!=4)||(m[1].length!=2)||(m[2].length!=2)||isNaN(m[0])||isNaN(m[1])||isNaN(m[2])||(m[1]> 12)||(m[2]> 31)){//对出生日期的格式进行检查,要求日期全部为数字,且由-号分隔开,年份4位,月份和日期2位
alert( "请按照 YYYY-MM-DD 输入出生日期! ");myform.birthday.focus();return false;
}