$("#frm").validate({
rules: {
username: {
required: true,
usernameemail: true,
maxlength: 100
}
}
});
$.validator.addMethod("usernameemail", function(value, element) {
if (this.optional(element)) // return true on optional element
return true;
valid = true;
if (value.indexOf("@") > 0) {
valid = valid && $.validator.methods.email.call(this, value, element);
} else {
valid = valid && $.validator.methods.username.call(this, value, element);
}
return valid;
}, 'Please provide a valid username or email');
$.validator.addMethod("username", function(value, element) {
return this.optional(element) || /^[a-z0-9\-]+$/i.test(value);
}, "Username must contain only letters, numbers, or dashes.");
您需要更改用戶名正則表達式,你需要什麼,希望這有助於
葉氏,檢查'@因爲它在電子郵件地址真實需要的(只要它不是在允許的'有效用戶名)。 – Qtax
@Qtax - 是的,@不允許在用戶名 - 所以我假設我需要做一個funcCall,檢查@並運行每個驗證... – Jason