如何仅对非字母字符jquery验证验证字符串

时间:2011-12-20 10:05:18

标签: javascript jquery jquery-validate

我的HTML表单中有一个文本字段。我想添加jquery验证,只向该字段添加非字母字符。

我想要

1233$%{} is valid 

但是1233$%{}wewe is invalid

我想在字母字符出现时返回false。

目前我有这个但没有工作

 jQuery.validator.addMethod("alpha", function(value, element) {
return this.optional(element) || value != value.match(/^[a-zA-Z]+$/);
},"Only Non Alphabatic Characters Allowed.");

如果输入的字符串包含所有字母字符,则此sript效果很好。

string "eeeeeeeeeeeeee"返回false。但"eeeeeeeeeee1111"返回true :(

请帮忙。

我正在使用

http://bassistance.de/jquery-plugins/jquery-plugin-validation/

2 个答案:

答案 0 :(得分:2)

你只是想要!value.match,你也不想要^或$,因为那些匹配行的开头和结尾。

jQuery.validator.addMethod("alpha", function(value, element) {
  return this.optional(element) || !value.match(/[a-zA-Z]+/);
},"Only Non Alphabatic Characters Allowed.");

答案 1 :(得分:1)

试试这个:

 jQuery.validator.addMethod("alpha", function(value, element) {
    return (this.optional(element) || !(/[a-z]/gi).test(value));
 },"Only Non Alphabatic Characters Allowed.");