$(function() {
var submit = false;
var superHtml = [];
/**
* 匹配企業賬號,以字母開頭,長度在6-20之間,只能包含字符、數字和下劃線。
*/
// jQuery.validator.addMethod("userNameIsFormart", function(value, element) {
// return this.optional(element) || /^[a-zA-Z]\w{5,19}$/.test(value);
// }, "企業名稱格式:以字母開頭,長度在6-20字符之間,只能包含字符、數字和下劃線。");
/**
* 驗證企業名稱是否存在;
*/
// jQuery.validator.addMethod("userNameIsExist", function(value, element) {
// return action.checkUserName();
// }, "該企業名稱不存在。");ajax
/**
* 匹配密碼,長度在6-20之間。
*/
// jQuery.validator.addMethod("pwdIsFormart", function(value, element) {
// return this.optional(element) || /^.{6,20}$/.test(value);
// }, "企業密碼格式:長度在6-20字符之間");json
/**
* 驗證的調用方法 if(!validator.valid()){ return false; } 驗證從新啓動 validator.reset();
*/
var validator = {
validator : null,
valid : function($this) {
// 若是驗證經過,設置提示信息消失
if(this.validator.element($this)){
$this.parentNode.children[1].remove();
}
return this.validator.element($this);
},
validForm : function() {
return this.validator.form();
},
reset : function() {
this.validator.resetForm();
},
init : function() {
this.validator = $('#frm_login').validate({
// ignore: [],//設置驗證隱藏表單域
rules : {
'userName' : {
required : true,
// userNameIsFormart : true,
// userNameIsExist : true
},
'password' : {
required : true,
// pwdIsFormart : true
},
},
/* 設置錯誤信息 */
messages : {
'userName' : {
required : "請輸入企業名稱。",
userNameIsFormart : "用戶名或者密碼錯誤。"
// userNameIsExist : "該企業名稱不存在。"
},
'password' : {
required : "請輸入企業密碼。",
pwdIsFormart : "用戶名或者密碼錯誤。"
}
},
onkeyup : false, // disable key up
onfocusout : false, // disable focus out
// showErrors : function(errorMap, errorList) {
// if (errorList.length) {
// alert(errorList[0].message);
// }
// }
errorPlacement : function(error, element){
if(($(element).val() == "") || ( element.closest('div').find('span').length > 0 ) ){
element.closest('div').find('span').remove();
}
element.closest('div').append('<span style="color: red">' + error.text() + '</span>');
}app
});
}async
};
validator.init();
var action = {
/**
* 驗證該用戶名是否已被使用
*/
checkUserName : function() {
var url = contentPath + "/sysUser/testSysUserExist";
var param = {};
param.userName = $('#userName').val();
param.type = $('#type').val();
var valState = true;
$.ajax({
url : url,// 查詢方法的url
data : param, // params
type : "post",
dataType : "json",
async : false,
success : function(data) {
if (data.data.exist) {
valState = true;
} else {
valState = false;
}
}
});
return valState;
}
};post
var bind = {
bind_event : function() {
//
$('#btn_do_login').on('click', function(e) {
e.preventDefault();
if (!validator.validForm()) {
return false;
}
if (submit) {
return;
}
submit = true;
$(this).attr('disabled', true);
//
var url = contentPath + "/doLogin";
var param = {};
param.username = $("#userName").val(); // 企業帳號
param.password = $("#password").val(); // 企業密碼
param.type = $("#type").val(); // 用戶類型
$.ajax({
url : url,
data : param,
type : 'POST',
dataType : 'json',
success : function(data) {
submit = false;
$('#btn_do_login').attr('disabled', false);
if (data.status === "success") {
window.location.href = contentPath + "/";
} else {
// alert(data.msg);
$('#password').closest('div').append('<span style="color: red">' + data.msg + '</span>');
}
},
error : function() {
window.location.href = contentPath + "/error";
}
});
});
/**
* 企業名稱得到焦點,將提示消息清空
*/
$('#userName').on('focus', function() {
$('#userName').closest('div').find('span').remove();
});
/**
* 企業密碼得到焦點,將提示消息清空
*/
$('#password').on('focus', function() {
$('#password').closest('div').find('span').remove();
});
ui
/**
* 企業帳號失去焦點事件
*/
// $('#userName').on('blur', function() {
// validator.valid(this);
// });this
/**
* 企業密碼失去焦點事件
*/
// $('#password').on('blur', function() {
// validator.valid(this);
// });url
}spa
};
bind.bind_event();
});orm