用你的正则代码,测试"2009-03-01","2009-01-01"都可以通过。
不过你的表达式还是有问题,应该写作:
var a=/^[1-2][0-9][0-9][0-9]-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[0-1])$/;
不过你的表达式还是有问题,应该写作:
var a=/^[1-2][0-9][0-9][0-9]-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[0-1])$/;
解决方案 »
- js判断当前页面是否刷新,刷新不执行js代码。
- Javascript怎么连接SQLite数据库?搞了半个月了都没搞定
- 一个页面可以建多个XMLHttpRequest对象吗?
- Chrome浏览器怎么直接打印
- for循环........
- 帮帮我啊,不知道错在哪里
- 急问一个基础问题
- 两个input框同步
- 有这么一个问题 :在<td onClick="a"><img onClick="b"> </td>中想用javascript的b取a的操作,并将a取代?
- 如何使网页在加载时,没有工具栏地址栏
- 能不能使用层的功能实现不使用框架而有框架的功能呢?
- 在JavaScript中是否可以调用ASP函数?还是不可以?
var p = /^[1-2][0-9][0-9][0-9]-(0[13578]|1[02])-(0[1-9]|[12][0-9]|3[0-1])$/;
alert(p.test("2009-03-01") && p.test("2009-01-01"));
//这个验证这两个没有错的说,不过推荐使用isDate方法
var isDate = function (a, b, c) {
var a = parseInt(a), b = parseInt(b), c = parseInt(c), date = new Date(a, -- b, c);
return (a == date.getFullYear() && b == date.getMonth() && c == date.getDate());
};
alert(isDate.apply(null, "2009-03-01".split("-")) && isDate.apply(null, "2009-02-01".split("-")));
</script>