需要有关 javascript 表单验证器的帮助

发布于 2024-11-09 01:05:19 字数 301 浏览 0 评论 0原文

我对 javascript 比较陌生,必须设计一个包含以下字段的表单 vlalidator

name must start with a capital letter and must have only the characters a-z and A-Z and 

password_field => (must contain atleast two symbols from the list [ @,#,$,%,^,& ] 

满足上述所有条件的最佳方法是什么?我应该使用regexc 还是什么?

i am relatively new to javascript and have to design a form vlalidator with the following fields

name must start with a capital letter and must have only the characters a-z and A-Z and 

password_field => (must contain atleast two symbols from the list [ @,#,$,%,^,& ] 

whats the best way to meet all the above conditions? should i useregexc or what?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

烟织青萝梦 2024-11-16 01:05:19

正则表达式肯定会有帮助。

这是一个验证器的示例,很容易自定义: validator

它只需要某种翻译方法 - 或者只是用输出文本替换调用。

在 html 中,您为每个验证器规范设置类,例如

大写字母:

,然后在验证器对象...

JS 调用将是:

var my_validator = new validator(yourformID);
my_validator.validate()

regex will definitively be helpful.

here is an axample of a validator, which is easy to customize: validator

it just requires some kind of translate method - or just replace the calls with your output text.

in the html you set classes for each validator-specification like capitalletter:

<input class="capitalletter" type="text" name="somename" />

and then implement the function capitalletter in the validator object...

JS call will be:

var my_validator = new validator(yourformID);
my_validator.validate()
羁绊已千年 2024-11-16 01:05:19

对于大写字母,这成立: str[0] >= 'A' && str[0] <= 'Z'

仅字母:像 /^[az]$/i 这样的正则表达式应该匹配。

长度:str.length >= 10

符号:正则表达式,如 str.replace(/[^@#$%^&]+/, "").length >= 2

如果您只想使用正则表达式作为密码,您可以这样做:

/[@#$%^&]{2,}/.test(str) && /.{10,}/.test(str)

For capital letter this holds: str[0] >= 'A' && str[0] <= 'Z'.

Only letters: a regexp like /^[a-z]$/i should match.

Length: str.length >= 10.

Symbols: regexp like str.replace(/[^@#$%^&]+/, "").length >= 2.

If you want to only use regexps for the password, you could do:

/[@#$%^&]{2,}/.test(str) && /.{10,}/.test(str)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文