北漂IT民工 的博客

快速实现一个基于jQuery的表单验证插件

这是一个与dom完全无关的表单验证插件。

代码如下:

(function($) {

var patterns = {

number: /d+/,

username: /^[A-Za-z_]+[A-za-z_0-9]$/,

email: /^w+([-+.]w+)
@w+([-.]w+).w+([-.]w+)$/,

password: /^[x00-x7f]+$/,

url: /./,

ascii: /^[x00-x7f]+$/,

string: /.
/,

chinese: /.*/

};


var validator = function(options) {

options[‘type’] = options[‘type’] || ‘string’;

options[‘maxLength’] = options[‘maxLength’] || 256;

options[‘minLength’] = options[‘minLength’] || 0;

options[‘null’] = options[‘null’] || false;

this.options = options;

}

validator.prototype.validate = function(value) {

if (value.length == 0 && this.options[‘null’]) return true;

if (value.length > this.options[‘maxLength’]) return false;

if (value.length < this.options[‘minLength’]) return false;

return patterns[this.options[‘type’]].test(value);

}

$.extend({

validator: validator

});

})(jQuery);


调用办法

var validator = new $.validator(options)

validator.valid(dom.value);


目前还没有将所有的正则完成。

欢迎提供正则表达式。