我在这个简单的表单字段验证脚本上遇到了一个奇怪的小问题。
我有3个字段,1个文字输入用于名称,1个电子邮件输入和1个textarea用于评论。
基本上现在发生的事情是,如果您将任何字段留下并点击提交,我会将.error
或.valid
类分配给正确的dom对象。
然而奇怪的是,如果你错过其中一个字段,例如跳过名字字段,填写其他字段,点击提交然后尝试填写名称,验证即使它识别字段值当传递正则表达式(/.+/gi
)时,它将应用错误类,因为它将字段标记为failed
。
对我所做错的任何想法都会非常感激。
JS Fiddle的代码示例:http://jsfiddle.net/jannis/YXfZN/
注意:此错误在Mac上的链接小提琴中发生并重现(v 12.0.742.112)。
谢谢你看看, 我期待着您的想法和建议。
Jannis
答案 0 :(得分:1)
这是因为g
标志。因为你的正则表达式变得粘稠。同样的问题:Regex in javascript fails every other time with identical input
如果您在控制台中测试此代码(regex[type].test( 'a' )
),则每次都会得到不同的结果。
在没有g
标志的情况下再试一次。