求一js:即要求输入的日期格式只能为:2008年10月
如果你要去使用中文的年月的话
[code="js"]
function testDate(inputString) {
var day=parseInt((inputString.match(/^2008年10月(\d){1,2}日$/) || ['',99])[1]);
return day>=1 && day<=31;
}
[/code]
用正则表达式匹配,不过本人对于正则表达式不太熟悉,所以不能提供代码。
不用正则表达式的话,普通编码也可以,就是显的有些啰嗦,如下:
[code="js"]
function check(x) {
var flag = true;
if(x.length != 8) {
flag = false;
} else if(x.substr(4, 1) != "\u5e74"
|| x.substr(7, 1) != "\u6708") {
flag = false;
} else {
var year = new Number(x.substr(0, 4));
var month = new Number(x.substr(5, 2));
if((year >2050 || year < 1900)
|| (month > 12 || month < 1)) {
flag = false;
}
}
return flag;
}
[/code]
其中\u5e74和\u6708分别是年和月的unicode表示。年的上下限可以自己调。
[code="java"]
function testDate(inputString) {
return /\d\d\d\d年(\d){1,2}月/.test(inputString);
}
alert(testDate('2008年11月')); //echo true
alert(testDate('2008年1月')); //echo true
alert(testDate('2008年月')); //echo false
[/code]
测试通过