我正在使用http://www.mathachew.com/sandbox/jquery-autotab/中找到的插件 (请看看它以了解我在说什么)。
在达到maxlength后从输入改变焦点..并且还要验证输入 所以我在这里有这一行:
$("#day").autotab_filter({format:"custom", pattern:"0[1-9]|1[0-9]|2[0-1]|3[01]"});
$("#month").autotab_filter({format:"custom", pattern:"0[1-9]|1[012]"});
似乎我的正则表达式模式是错误的或什么的!我尝试了所有可能的组合。请帮忙!
答案 0 :(得分:2)
你的#day模式:
0[1-9]|1[0-1]|2[0-1]|3[01]
允许01-09,10,11,20,21,30和31的号码。我认为您正在寻找:
0[1-9]|1[0-9]|2[0-9]|3[01]
你的#month模式对我来说很好。
答案 1 :(得分:0)
我找到了答案的人......如果将来有人需要它: 我必须指定01到31之间的数字对应,因为这是将被删除的模式,而不是保留! 所以要指定除01到31范围之外的所有数字,这是正确的模式:
[^0-9]|00|^[3][2-9]$|^[4-9]
解释:[^0-9]
除了数字之外不会有任何字符!从0到9
00,不是有效的日期号码!
^[3][2-9]$
适用于以3开头且以2到9之间的数字结尾的所有数字
35,虽然不是有效的日期号码!
^[4-9]
适用于以4到9开头的数字
任何其他关于这个问题的问题我很乐意回答它