表单验证函数
formVerify() {
var forms = document.getElementsByTagName("input");
// 获取所有input,返回 nodelist(不是数组)
var $forms = Array.from(forms);
// 获取数组
$forms.forEach((item, index) => {
var $e = $(item); // 把js对象转化成jquery对象
var $req = $e.data("req");
var $type = $e.data("type");
var $value = $e.val(); // 获取值
// 验证必填
if ($req == true) {
if ($value == "" || $value == null || $value == undefined) {
// 必填值没填
this.flag = false; // 验证失败
console.log(this.flag);
$e.parent()
.find(".gd-form-tip")
.html("此项为必填项");
return 0;
} else {
$e.parent()
.find(".gd-form-tip")
.html("");
}
}
// 验证邮箱
if ($type == "email") {
var pemail = /^[a-zA-Z0-9]+@[a-zA-Z0-9-_]+(\.[a-zA-Z0-9-_]+)+$/i;
if (!pemail.test($value)) {
this.flag = false; // 验证失败
$e.parent()
.find(".gd-form-tip")
.html("邮箱格式错误");
return;
} else {
$e.parent()
.find(".gd-form-tip")
.html("");
}
} else if ($type == "password") {
var ppassword = /[A-Za-z].*[0-9]|[0-9].*[A-Za-z]/;
if (
!ppassword.test($value) ||
$value.length < 8 ||
$value.length > 16
) {
this.flag = false; // 验证失败
$e.parent()
.find(".gd-form-tip")
.html("密码长度为8-16,只能由字母和数字组成");
return;
} else {
$e.parent()
.find(".gd-form-tip")
.html("");
}
} else if ($type == "password2") {
if (this.thisData.user_password2 !== this.thisData.user_password) {
$e.parent()
.find(".gd-form-tip")
.html("两次密码输入不一致");
} else {
$e.parent()
.find(".gd-form-tip")
.html("");
}
}
});
},