[html]
复制代码 代码如下:
<form action="" method="post" id="formValidate">
数值:<input name="" type="text" validate="number" /><span></span><br/>
浮点型:<input name="" type="text" validate="decimal" /><span></span><br/>
英文:<input name="" type="text" validate="english" /><span></span><br/>
大写英文:<input name="" type="text" validate="upper_english" /><span></span><br/>
小写英文:<input name="" type="text" validate="lower_english" /><span></span><br/>
邮件格式:<input name="" type="text" validate="email" /><span></span><br/>
是否包含中文:<input name="" type="text" validate="chinese" /><span></span><br/>
URL:<input name="" type="text" validate="url" /><span></span><br/>
电话号码:<input name="" type="text" validate="phone" /><span></span><br/>
IP地址:<input name="" type="text" validate="ip" /><span></span><br/>
金额:<input name="" type="text" validate="money" /><span></span><br/>
数值或者英文或者_:<input name="" type="text" validate="number_letter" /><span></span><br/>
邮政编码:<input name="" type="text" validate="zip_code" /><span></span><br/>
可用账号:<input name="" type="text" validate="account" /><span></span><br/>
QQ:<input name="" type="text" validate="qq" /><span></span><br/>
身份证:<input name="" type="text" validate="card" /><span></span><br/>
数值 允许为空:<input name="" type="text" validate="number" empty='yes' /><span></span><br/>
数值 长度 1-3:<input name="" type="text" validate="number" min=1 max=3 /><span></span><br/>
数值 长度 1-3 允许为空:<input name="" type="text" validate="number" min=1 max=3 empty='yes'/><span></span><br/>
<input name="" type="submit" />
</form>
<script src="/UploadFiles/2021-04-02/jquery.js"><script src="formValidate.js"><script type="text/javascript">
var formValidate = new formValidate();
formValidate.init({});
</script>
[javascript]
复制代码 代码如下:
/*
* 通用JS验证类
* 使用方法:
* var formValidate = new formValidate();
* formValidate.init({});
* 注意:
* <form action="" method="post" id="formValidate">
* id为formValidate
*
* <input name="" type="text" validate="zip_code" empty="yes" min=10 max=10 /><span></span>
* validate="zip_code" 验证是否是邮政编码
* empty="yes" 验证是否允许为空
* min=10 最小长度
* max=10 最大长度
* <span></span> 显示提示内容
*/
var formValidate = function () {
var _this = this;
this.options = {
number : {reg : /^[0-9]+$/, str : '必须为数字'},
decimal : {reg : /^[-]{0,1}(\d+)[\.]+(\d+)$/ , str : '必须为DECIMAL格式'},
english : {reg : /^[A-Za-z]+$/, str : '必须为英文字母'},
upper_english : {reg : /^[A-Z]+$/, str : '必须为大写英文字母'},
lower_english : {reg : /^[a-z]+$/, str : '必须为小写英文字母'},
email : {reg : /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/, str : 'Email格式不正确'},
chinese : {reg : /[\u4E00-\u9FA5\uf900-\ufa2d]/ig, str : '必须含有中文'},
url : {reg : /^[a-zA-z]+:\/\/[^s]*/, str : 'URL格式不正确'},
phone : {reg : /^[1][3][0-9]{9}$/ , str : '电话号码格式不正确'},
ip : {reg : /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ , str : 'IP地址格式不正确'},
money : {reg : /^[0-9]+[\.][0-9]{0,3}$/ , str : '金额格式不正确'},
number_letter : {reg : /^[0-9a-zA-Z\_]+$/ , str : '只允许输入英文字母、数字、_'},
zip_code : {reg : /^[a-zA-Z0-9 ]{3,12}$/ , str : '邮政编码格式不正确'},
account : {reg : /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/ , str : '账号名不合法,允许5-16字符,字母下划线和数字'},
qq : {reg : /[1-9][0-9]{4,}/ , str : 'QQ账号不正确'},
card : {reg : /^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X)?$/ , str : '身份证号码不正确'},
};
//初始化 绑定表单 选项
this.init = function (options) {
this.setOptions(options);
this.checkForm();
};
//设置参数
this.setOptions = function (options) {
for (var key in options) {
if (key in this.options) {
this.options[key] = options[key];
}
}
};
//检测表单 包括是否为空,最大值 最小值,正则验证
this.checkForm = function () {
$("#formValidate").submit(function () {
var formChind = $("#formValidate").children();
var testResult = true;
formChind.each(function (i) {
var child = formChind.eq(i);
var value = child.val();
var len = value.length;
var childSpan = child.next();
//属性中是否为空的情况
if (child.attr('empty')) {
if (child.attr('empty') == 'yes' && value == '') {
if (childSpan) {
childSpan.html('');
}
return;
}
}
//属性中min 和 max 最大和最小长度
var min = null;
var max = null;
if (child.attr('min')) min = child.attr('min');
if (child.attr('max')) max = child.attr('max');
if (min && max) {
if (len < min || len > max) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度在' + min + '与' + max + '之间');
testResult = false;
return;
}
}
} else if (min) {
if (len < min) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度应大于' + min);
testResult = false;
return;
}
}
} else if (max) {
if (len > max) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度应小于' + max);
testResult = false;
return;
}
}
}
//正则校验
if (child.attr('validate')) {
var type = child.attr('validate');
var result = _this.check(value, type);
if (childSpan) {
childSpan.html('');
if (result != true) {
childSpan.html(' ' + result);
testResult = false;
}
}
}
});
return testResult;
});
};
//检测单个正则选项
this.check = function (value, type) {
if (this.options[type]) {
var val = this.options[type]['reg'];
if (!val.test(value)) {
return this.options[type]['str'];
}
return true;
} else {
return '找不到该表单验证正则项';
}
};
}
复制代码 代码如下:
<form action="" method="post" id="formValidate">
数值:<input name="" type="text" validate="number" /><span></span><br/>
浮点型:<input name="" type="text" validate="decimal" /><span></span><br/>
英文:<input name="" type="text" validate="english" /><span></span><br/>
大写英文:<input name="" type="text" validate="upper_english" /><span></span><br/>
小写英文:<input name="" type="text" validate="lower_english" /><span></span><br/>
邮件格式:<input name="" type="text" validate="email" /><span></span><br/>
是否包含中文:<input name="" type="text" validate="chinese" /><span></span><br/>
URL:<input name="" type="text" validate="url" /><span></span><br/>
电话号码:<input name="" type="text" validate="phone" /><span></span><br/>
IP地址:<input name="" type="text" validate="ip" /><span></span><br/>
金额:<input name="" type="text" validate="money" /><span></span><br/>
数值或者英文或者_:<input name="" type="text" validate="number_letter" /><span></span><br/>
邮政编码:<input name="" type="text" validate="zip_code" /><span></span><br/>
可用账号:<input name="" type="text" validate="account" /><span></span><br/>
QQ:<input name="" type="text" validate="qq" /><span></span><br/>
身份证:<input name="" type="text" validate="card" /><span></span><br/>
数值 允许为空:<input name="" type="text" validate="number" empty='yes' /><span></span><br/>
数值 长度 1-3:<input name="" type="text" validate="number" min=1 max=3 /><span></span><br/>
数值 长度 1-3 允许为空:<input name="" type="text" validate="number" min=1 max=3 empty='yes'/><span></span><br/>
<input name="" type="submit" />
</form>
<script src="/UploadFiles/2021-04-02/jquery.js"><script src="formValidate.js"><script type="text/javascript">
var formValidate = new formValidate();
formValidate.init({});
</script>
[javascript]
复制代码 代码如下:
/*
* 通用JS验证类
* 使用方法:
* var formValidate = new formValidate();
* formValidate.init({});
* 注意:
* <form action="" method="post" id="formValidate">
* id为formValidate
*
* <input name="" type="text" validate="zip_code" empty="yes" min=10 max=10 /><span></span>
* validate="zip_code" 验证是否是邮政编码
* empty="yes" 验证是否允许为空
* min=10 最小长度
* max=10 最大长度
* <span></span> 显示提示内容
*/
var formValidate = function () {
var _this = this;
this.options = {
number : {reg : /^[0-9]+$/, str : '必须为数字'},
decimal : {reg : /^[-]{0,1}(\d+)[\.]+(\d+)$/ , str : '必须为DECIMAL格式'},
english : {reg : /^[A-Za-z]+$/, str : '必须为英文字母'},
upper_english : {reg : /^[A-Z]+$/, str : '必须为大写英文字母'},
lower_english : {reg : /^[a-z]+$/, str : '必须为小写英文字母'},
email : {reg : /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/, str : 'Email格式不正确'},
chinese : {reg : /[\u4E00-\u9FA5\uf900-\ufa2d]/ig, str : '必须含有中文'},
url : {reg : /^[a-zA-z]+:\/\/[^s]*/, str : 'URL格式不正确'},
phone : {reg : /^[1][3][0-9]{9}$/ , str : '电话号码格式不正确'},
ip : {reg : /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/ , str : 'IP地址格式不正确'},
money : {reg : /^[0-9]+[\.][0-9]{0,3}$/ , str : '金额格式不正确'},
number_letter : {reg : /^[0-9a-zA-Z\_]+$/ , str : '只允许输入英文字母、数字、_'},
zip_code : {reg : /^[a-zA-Z0-9 ]{3,12}$/ , str : '邮政编码格式不正确'},
account : {reg : /^[a-zA-Z][a-zA-Z0-9_]{4,15}$/ , str : '账号名不合法,允许5-16字符,字母下划线和数字'},
qq : {reg : /[1-9][0-9]{4,}/ , str : 'QQ账号不正确'},
card : {reg : /^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X)?$/ , str : '身份证号码不正确'},
};
//初始化 绑定表单 选项
this.init = function (options) {
this.setOptions(options);
this.checkForm();
};
//设置参数
this.setOptions = function (options) {
for (var key in options) {
if (key in this.options) {
this.options[key] = options[key];
}
}
};
//检测表单 包括是否为空,最大值 最小值,正则验证
this.checkForm = function () {
$("#formValidate").submit(function () {
var formChind = $("#formValidate").children();
var testResult = true;
formChind.each(function (i) {
var child = formChind.eq(i);
var value = child.val();
var len = value.length;
var childSpan = child.next();
//属性中是否为空的情况
if (child.attr('empty')) {
if (child.attr('empty') == 'yes' && value == '') {
if (childSpan) {
childSpan.html('');
}
return;
}
}
//属性中min 和 max 最大和最小长度
var min = null;
var max = null;
if (child.attr('min')) min = child.attr('min');
if (child.attr('max')) max = child.attr('max');
if (min && max) {
if (len < min || len > max) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度在' + min + '与' + max + '之间');
testResult = false;
return;
}
}
} else if (min) {
if (len < min) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度应大于' + min);
testResult = false;
return;
}
}
} else if (max) {
if (len > max) {
if (childSpan) {
childSpan.html('');
childSpan.html(' 字符串长度应小于' + max);
testResult = false;
return;
}
}
}
//正则校验
if (child.attr('validate')) {
var type = child.attr('validate');
var result = _this.check(value, type);
if (childSpan) {
childSpan.html('');
if (result != true) {
childSpan.html(' ' + result);
testResult = false;
}
}
}
});
return testResult;
});
};
//检测单个正则选项
this.check = function (value, type) {
if (this.options[type]) {
var val = this.options[type]['reg'];
if (!val.test(value)) {
return this.options[type]['str'];
}
return true;
} else {
return '找不到该表单验证正则项';
}
};
}
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月27日
2024年11月27日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]