修改了重复密码验证的js,精简代码量,减少了重复的校验,减少了valuedator中confirm的参数 [ci skip]

This commit is contained in:
sxw 2015-08-04 19:54:44 +08:00
parent 1d4af5cc7c
commit 0b55f6bbf7
5 changed files with 14 additions and 64 deletions

View File

@ -1,7 +1,4 @@
require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrfHeader){ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrfHeader){
$("#change_password-form").formValidation({ $("#change_password-form").formValidation({
framework: "bootstrap", framework: "bootstrap",
fields: { fields: {
@ -28,20 +25,11 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
min: 6, min: 6,
max: 30, max: 30,
message: '密码长度必须在6到30位之间' message: '密码长度必须在6到30位之间'
},
confirm: {
firstPassword: $("#new_password"),
secondPassword: $("#confirm_password"),
message: "两次输入的密码必须一致"
} }
}, },
onSuccess: function(e, data) { onSuccess: function(e, data) {
if (!data.fv.isValidField('confirm_password')) {
data.fv.revalidateField('confirm_password'); data.fv.revalidateField('confirm_password');
}
} }
}, },
confirm_password: { confirm_password: {
validators: { validators: {
@ -49,17 +37,10 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
message: "请填写确认密码" message: "请填写确认密码"
}, },
confirm: { confirm: {
firstPassword: $("#new_password"), original: $("#new_password"),
secondPassword: $("#confirm_password"),
message: "两次输入的密码必须一致" message: "两次输入的密码必须一致"
} }
}, },
onSuccess: function(e, data) {
if (!data.fv.isValidField('new_password')) {
data.fv.revalidateField('new_password');
}
}
} }
} }
} }
@ -83,8 +64,6 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
bs_alert(data.data); bs_alert(data.data);
} }
} }
}) })
}); });
}); });

View File

@ -1,5 +1,4 @@
require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrfHeader){ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrfHeader){
$("#register-form") $("#register-form")
.formValidation({ .formValidation({
framework: "bootstrap", framework: "bootstrap",
@ -28,18 +27,10 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
min: 6, min: 6,
max: 30, max: 30,
message: '密码长度必须在6到30位之间' message: '密码长度必须在6到30位之间'
}, }
confirm: {
firstPassword: $("#password"),
secondPassword: $("#confirm_password"),
message: "两次输入的密码必须一致"
}
}, },
onSuccess: function(e, data) { onSuccess: function(e, data) {
if (!data.fv.isValidField('confirm_password')) {
data.fv.revalidateField('confirm_password'); data.fv.revalidateField('confirm_password');
}
} }
}, },
real_name: { real_name: {
@ -48,7 +39,6 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
message: "请填写真实姓名" message: "请填写真实姓名"
} }
}, },
}, },
confirm_password: { confirm_password: {
validators: { validators: {
@ -56,18 +46,9 @@ require(["jquery", "bs_alert", "csrf", "validation"], function($, bs_alert, csrf
message: "请填写确认密码" message: "请填写确认密码"
}, },
confirm: { confirm: {
firstPassword: $("#password"), original: $("#password"),
secondPassword: $("#confirm_password"),
message: "两次输入的密码必须一致" message: "两次输入的密码必须一致"
} }
},
onSuccess: function(e, data) {
if (!data.fv.isValidField('password')) {
data.fv.revalidateField('password');
}
} }
} }
} }

View File

@ -22,13 +22,11 @@
} }
} }
}); });
FormValidation.Validator.confirm = { FormValidation.Validator.confirm = {
validate: function(validator, $field, options) { validate: function(validator, $field, options) {
if (options.firstPassword.val() == options.secondPassword.val() ||options.secondPassword.val()== '') if (options.original.val() == $field.val() || $field.val()== '')
return true; return true;
return false; return false;
} }
}; };
})); }));

View File

@ -1,7 +1,6 @@
/** /**
* usernameCheck validator * usernameCheck validator
*/ */
(function(root, factory) { (function(root, factory) {
"use strict"; "use strict";
@ -13,7 +12,6 @@
// planted over the root! // planted over the root!
factory(root.jQuery, root.FormValidation); factory(root.jQuery, root.FormValidation);
} }
}(this, function ($, FormValidation, csrfHeader) { }(this, function ($, FormValidation, csrfHeader) {
FormValidation.I18n = $.extend(true, FormValidation.I18n || {}, { FormValidation.I18n = $.extend(true, FormValidation.I18n || {}, {
'en_US': { 'en_US': {
@ -22,23 +20,18 @@
} }
} }
}); });
FormValidation.Validator.usernameCheck = { FormValidation.Validator.usernameCheck = {
validate: function(validator, $field, options) { validate: function(validator, $field, options) {
if ($field.val() == '') if ($field.val() == '')
return true; return true;
return !$.ajax({ return !$.ajax({
async: false, async: false,
beforeSend: csrfHeader, beforeSend: csrfHeader,
url: "/api/username_check/", url: "/api/username_check/",
data: {username: $field.val()}, data: {username: $field.val()},
dataType: "json", dataType: "json",
method: "post", method: "post",
}).responseJSON.data;
}).responseJSON.data;
} }
}; };
})); }));

View File

@ -11,5 +11,4 @@ define("validation",
'validator/confirm', 'validator/confirm',
'validator/usernameCheck'], 'validator/usernameCheck'],
function () { function () {
}); });