javascript - 使用 jQuery Validate 避免大写输入

标签 javascript jquery regex validation jquery-validate

我正在制作一个分类广告网站,用户可以在其中通过表单(例如 Craigslist)提交广告。许多用户将他们广告的标题或描述写成大写以获得更多关注,但我不想影响网站的整体外观。

我想停止这种做法,但仍然允许连续使用少于三个大写字母的首字母缩略词(例如允许“位于美国”但不允许“LOOK,GREAT OFFER”)

我是 Validate 和 RegEx(仅一个周末)的新手,所以我需要您的帮助专家。

我正在使用这种方法:

$.validator.addMethod("noCaps", function(value, element) {
   return this.optional(element) || /[A-Z]{4}/.test(value); 
}, "You are not permitted to input more than three uppercase letters in a row!");

但我得到了完全相反的结果。我如何否定此 RegEx 以实现所需的规则?

如果有人对如何去做有更好的想法,也欢迎!

谢谢!!!

See/Edit Example Code

最佳答案

你可以在它前面加上一个否定(!),像这样:

$.validator.addMethod("noCaps", function(value, element) {
  return this.optional(element) || !/[A-Z]{4}/.test(value); 
}, "You are not permitted to input more than three uppercase letters in a row!");

You can give it a try here .

关于javascript - 使用 jQuery Validate 避免大写输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3654226/

相关文章:

javascript - Extjs 在窗口中验证面板

php - 组合框在 IE8 中不起作用

regex - Perl 6 POSIX 字符类是否尊重 LOCALE?

c# - 字符串删除html

javascript - Web 控制台命令不起作用

javascript - Knockout - 单击绑定(bind)行为

javascript - 函数(全局){...}(这个)如何工作?

javascript - CSS 显示内联 block 并用元素填充所有空间

javascript - 具有回调功能的欧芹验证器无法正常工作

javascript - IP 地址验证的正则表达式