[color#FF0000]一个特别奇怪的问题[/color]一个特别奇怪的问题我要做一个日期类型的验证。js代码如下:问题
[color=#FF0000]一个特别奇怪的问题[/color]
一个特别奇怪的问题
我要做一个日期类型的验证。js代码如下:
问题来了,如果我去掉JS中的alert弹出框
求大神指点~~~~~~
![[color=#FF0000]一个特别奇怪的有关问题[/color]](//img.reader8.net/uploadfile/jiaocheng/20140128/2634/2014012622344438965.gif)
一个特别奇怪的问题
[解决办法]什么浏览器,什么jQuery版本,换浏览器(比如Firefox、Chrome)试过么?
[解决办法]var jointime = $('.JoinTime').val();
你这个是取class为JoinTime的值,这个应该不是唯一的,他要继续查找。而你用alert就阻断查找
建议你用id的取值方式$("#JoinTime").val()
[解决办法]
if (!reg.test(jointime) && RegExp.$2 <= 12 && RegExp.$3 <= 31)
这里不应该是"或"
!reg.test(jointime)
[解决办法]
RegExp.$2 <= 0
[解决办法]
RegExp.$2 > 12
[解决办法]
RegExp.$3<=0
[解决办法]
RegExp.$3>31
再判断大月小月和润年就自己想了
[解决办法]
function showdata(){
var str=/^19(\d{2})-([1-9]
[解决办法]
0[1-9]
[解决办法]
1[0-2]{1,2})-([1-9]
[解决办法]
1[0-9]
[解决办法]
2[0-9]
[解决办法]
3[0-1])$/
var reg=new RegExp(str);
result=reg.test(t1.value);
if(result==true){
alert("你输入的日期是"+t1.value);
}
else{alert("你输入了一个错误的日期");}
}
脚本也可以用vbs来写,那么就可以直接用isDate函数
[解决办法]^((((1[6-9]
[解决办法][2-9]\d)\d{2})-(0?[13578]
[解决办法]1[02])-(0?[1-9]
[解决办法][12]\d
[解决办法]3[01]))
[解决办法](((1[6-9]
[解决办法][2-9]\d)\d{2})-(0?[13456789]
[解决办法]1[012])-(0?[1-9]
[解决办法][12]\d
------解决方案--------------------
30))
[解决办法](((1[6-9]
[解决办法][2-9]\d)\d{2})-0?2-(0?[1-9]
[解决办法]1\d
[解决办法]2[0-8]))
[解决办法](((1[6-9]
[解决办法][2-9]\d)(0[48]
[解决办法][2468][048]
[解决办法][13579][26])
[解决办法]((16
[解决办法][2468][048]
[解决办法][3579][26])00))-0?2-29-))$
下面的是加了时间验证的
^((((1[6-9]
[解决办法][2-9]\d)\d{2})-(0?[13578]
[解决办法]1[02])-(0?[1-9]
[解决办法][12]\d
[解决办法]3[01]))
[解决办法](((1[6-9]
[解决办法][2-9]\d)\d{2})-(0?[13456789]
[解决办法]1[012])-(0?[1-9]
[解决办法][12]\d
[解决办法]30))
[解决办法](((1[6-9]
[解决办法][2-9]\d)\d{2})-0?2-(0?[1-9]
[解决办法]1\d
[解决办法]2[0-8]))
[解决办法](((1[6-9]
[解决办法][2-9]\d)(0[48]
------解决方案--------------------
[2468][048]
[解决办法][13579][26])
[解决办法]((16
[解决办法][2468][048]
[解决办法][3579][26])00))-0?2-29-)) (20
[解决办法]21
[解决办法]22
[解决办法]23
[解决办法][0-1]?\d):[0-5]?\d:[0-5]?\d$
日期的正则表达式,YYYY-MM-DD YYYY/MM/DD YYYY.MM.DD
"^(?:(?:(?:(?:1[6-9]
[解决办法][2-9]\d)?(?:0[48]
[解决办法][2468][048]
[解决办法][13579][26])
[解决办法](?:(?:16
[解决办法][2468][048]
[解决办法][3579][26])00)))(\/
[解决办法]-
[解决办法]\.)(?:0?2\1(?:29))$)
[解决办法](?:(?:1[6-9]
[解决办法][2-9]\d)?\d{2})(\/
[解决办法]-
[解决办法]\.)(?:(?:(?:0?[13578]
[解决办法]1[02])\2(?:31))
[解决办法](?:(?:0?[1,3-9]
[解决办法]1[0-2])\2(29
[解决办法]30))
[解决办法](?:(?:0?[1-9])
------解决方案--------------------
(?:1[0-2]))\2(?:0?[1-9]
[解决办法]1\d
[解决办法]2[0-8]))$" string regex = @"^((\d{2}(([02468][048])
[解决办法]([13579][26]))[\-\/\s]?((((0?[13578])
[解决办法](1[02]))[\-\/\s]?((0?[1-9])
[解决办法]([1-2][0-9])
[解决办法](3[01])))
[解决办法](((0?[469])
[解决办法](11))[\-\/\s]?((0?[1-9])
[解决办法]([1-2][0-9])
[解决办法](30)))
[解决办法](0?2[\-\/\s]?((0?[1-9])
[解决办法]([1-2][0-9])))))
[解决办法](\d{2}(([02468][1235679])
[解决办法]([13579][01345789]))[\-\/\s]?((((0?[13578])
[解决办法](1[02]))[\-\/\s]?((0?[1-9])
[解决办法]([1-2][0-9])
[解决办法](3[01])))
[解决办法](((0?[469])
[解决办法](11))[\-\/\s]?((0?[1-9])
[解决办法]([1-2][0-9])
[解决办法](30)))
[解决办法](0?2[\-\/\s]?((0?[1-9])
[解决办法](1[0-9])
[解决办法](2[0-8]))))))"; //日期部分
regex += @"(\s(((0?[0-9])
------解决方案--------------------
([1-2][0-3]))\:([0-5]?[0-9])((\s)
[解决办法](\:([0-5]?[0-9])))))?$";//时间部分
吐血吧