求一段验证“2010-08”这样日期格式有效性的javascript代码!
解决方案 »
- 这种格式的时间“2010-06-09T20:48:52Z”如何算时间差?
- 在Js中,如何取得将要跳转到的网页地址?
- 大家好,我有问题请教大家,请帮助谢谢
- JavaScript.DOM编程艺术 哪位有中文版的
- 一个困扰我半天的问题,请高手帮忙!
- 移动层怎么做的,就像msn的blog,可以让用户自己拍每个块的顺序?
- 网页播放器多个文件连继播放
- 一个两天没有解决的问题,哪位大虾支招啊
- 怎样把这两条语句合成一条,在线等
- 急!如何用javascript判断html中的checkbox是否被选中??各路大侠,大虾都来看看呀!
- funncalendar 如何双月显示啊?
- 加载js代码前和后结果不一样,研究动态菜单的代码时出现问题
alert(reg.test("2010-08"));
alert(reg.test("2010-13"));
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
<script language="javascript" src="js/jquery.js"></script>
</head>
<body>
</body>
</html>
<script language="javascript">
$(function(){
alert(validateDate('2011-2-29'));
});
//要求为xxxx-mm-dd的格式
function validateDate(dateString){
var pattern=/^\d{4}-\d{1,2}-\d{1,2}$/;
if(!pattern.test(dateString)){
alert("1");
return false;
}
var arr=dateString.split("-");
//月份不得大于12
if(parseInt(arr[1])>12){
return false;
}
//验证那月天数
var month=parseInt(arr[1])+1;
var str=arr[0]+"/"+month+"/0";
var date=new Date(arr[0]+"/"+month+"/0");
var maxDays=date.getDate();
if(arr[2]>maxDays){
return false;
}else{
return true;
}
}
</script>
<script>
var reg = /^\d{4}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$/;
alert(reg.test("2010-08-01"));
alert(reg.test("2010-12-00"));
</script>不过这个只能简单的验证格式 2011-2-28/29/30 这种情况是检测不出的……自己写一个完善的会很费劲,建议你试下比较成熟的框架,推荐这个,简单易用:
http://www.my97.net/dp/index.asp