jQuery validator: focus invalid field when calling valid()
/*
* 在validate呼叫valid()驗證方法式, 加上focusInValid的動件
*/
(function($) {
$.extend($.fn, {
valid2 : function() {
var valid = true;
var validator;
if ($(this[0]).is('form')) {
validator = this.validate();
valid = this.validate().form();
} else {
validator = $(this[0].form).validate();
this.each(function() {
valid &= validator.element(this);
});
}
if (!valid)
validator.focusInvalid();
return valid;
}
});
// 新增一個 regex 的驗證方式
$.validator.methods.regex = function(value, element, param) {
return this.optional(element) || ((typeof(param) == 'function' && typeof(param.test) == 'function') ? param.test(value) : new RegExp(param).test(value));
};
$.validator.messages.regex = 'Please enter a valid value.';
})(jQuery);