js客户端验证的工具类
js客户端验证的工具类
关键字: javascript 验证 工具类
common.js
Java代码 复制代码
1. //扩展String类功能
2. //删除字符串二边空格
3. String.prototype.trim = function()
4. {
5. return this.replace(/(^[\s]*)|([\s]*$)/g, "");
6. };
7. //删除字符串左边空格
8. String.prototype.lTrim = function()
9. {
10. return this.replace(/(^[\s]*)/g, "");
11. };
12. //删除字符串右边空格
13. String.prototype.rTrim = function()
14. {
15. return this.replace(/([\s]*$)/g, "");
16. };
//扩展String类功能
//删除字符串二边空格
String.prototype.trim = function()
{
return this.replace(/(^[\s]*)|([\s]*$)/g, "");
};
//删除字符串左边空格
String.prototype.lTrim = function()
{
return this.replace(/(^[\s]*)/g, "");
};
//删除字符串右边空格
String.prototype.rTrim = function()
{
return this.replace(/([\s]*$)/g, "");
};
---------------------------------------------------------------------
chkUtil.js
Java代码 复制代码
1. //定义一个可静态调用方法的js类
2. function ChkUtil() { }
3. //校验是否为空(先删除二边空格再验证)
4. ChkUtil.isNull = function (str) {
5. if (null == str || ""== str.trim()) {
6. return true;
7. } else {
8. return false;
9. }
10. };
11. //校验是否全是数字
12. ChkUtil.isDigit = function (str) {
13. var patrn=/^\d+$/;
14. return patrn.test(str);
15. };
16. //校验是否是整数
17. ChkUtil.isInteger = function (str) {
18. var patrn=/^([+-]?)(\d+)$/;
19. return patrn.test(str);
20. };
21. //校验是否为正整数
22. ChkUtil.isPlusInteger = function (str) {
23. var patrn=/^([+]?)(\d+)$/;
24. return patrn.test(str);
25. };
26. //校验是否为负整数
27. ChkUtil.isMinusInteger = function (str) {
28. var patrn=/^-(\d+)$/;
29. return patrn.test(str);
30. };
31. //校验是否为浮点数
32. ChkUtil.isFloat=function(str){
33. var patrn=/^([+-]?)\d*\.\d+$/;
34. return patrn.test(str);
35. };
36. //校验是否为正浮点数
37. ChkUtil.isPlusFloat=function(str){
38. var patrn=/^([+]?)\d*\.\d+$/;
39. return patrn.test(str);
40. };
41. //校验是否为负浮点数
42. ChkUtil.isMinusFloat=function(str){
43. var patrn=/^-\d*\.\d+$/;
44. return patrn.test(str);
45. };
46. //校验是否仅中文
47. ChkUtil.isChinese=function(str){
48. var patrn=/[\u4E00-\u9FA5\uF900-\uFA2D]+$/;
49. return patrn.test(str);
50. };
51. //校验是否仅ACSII字符
52. ChkUtil.isAcsii=function(str){
53. var patrn=/^[\x00-\xFF]+$/;
54. return patrn.test(str);
55. };
56. //校验手机号码
57. ChkUtil.isMobile = function (str) {
58. var patrn = /^0?1((3[0-9]{1})|(59)){1}[0-9]{8}$/;
59. return patrn.test(str);
60. };
61. //校验电话号码
62. ChkUtil.isPhone = function (str) {
63. var patrn = /^(0[\d]{2,3}-)?\d{6,8}(-\d{3,4})?$/;
64. return patrn.test(str);
65. };
66. //校验URL地址
67. ChkUtil.isUrl=function(str){
68. var patrn= /^http[s]?:\/\/[\w-]+(\.[\w-]+)+([\w-\.\/?%&=]*)?$/;
69. return patrn.test(str);
70. };
71. //校验电邮地址
72. ChkUtil.isEmail = function (str) {
73. var patrn = /^[\w-]+@[\w-]+(\.[\w-]+)+$/;
74. return patrn.test(str);
75. };
76. //校验邮编
77. ChkUtil.isZipCode = function (str) {
78. var patrn = /^\d{6}$/;
79. return patrn.test(str);
80. };
81. //校验合法时间
82. ChkUtil.isDate = function (str) {
83. if(!/\d{4}(\.|\/|\-)\d{1,2}(\.|\/|\-)\d{1,2}/.test(str)){
84. return false;
85. }
86. var r = str.match(/\d{1,4}/g);
87. if(r==null){return false;};
88. var d= new Date(r[0], r[1]-1, r[2]);
89. return (d.getFullYear()==r[0]&&(d.getMonth()+1)==r[1]&&d.getDate()==r[2]);
90. };
91. //校验字符串:只能输入6-20个字母、数字、下划线(常用手校验用户名和密码)
92. ChkUtil.isString6_20=function(str){
93. var patrn=/^(\w){6,20}$/;
94. return patrn.test(str);
95. };
//定义一个可静态调用方法的js类
function ChkUtil() { }
//校验是否为空(先删除二边空格再验证)
ChkUtil.isNull = function (str) {
if (null == str || ""== str.trim()) {
return true;
} else {
return false;
}
};
//校验是否全是数字
ChkUtil.isDigit = function (str) {
var patrn=/^\d+$/;
return patrn.test(str);
};
//校验是否是整数
ChkUtil.isInteger = function (str) {
var patrn=/^([+-]?)(\d+)$/;
return patrn.test(str);
};
//校验是否为正整数
ChkUtil.isPlusInteger = function (str) {
var patrn=/^([+]?)(\d+)$/;
return patrn.test(str);
};
//校验是否为负整数
ChkUtil.isMinusInteger = function (str) {
var patrn=/^-(\d+)$/;
return patrn.test(str);
};
//校验是否为浮点数
ChkUtil.isFloat=function(str){
var patrn=/^([+-]?)\d*\.\d+$/;
return patrn.test(str);
};
//校验是否为正浮点数
ChkUtil.isPlusFloat=function(str){
var patrn=/^([+]?)\d*\.\d+$/;
return patrn.test(str);
};
//校验是否为负浮点数
ChkUtil.isMinusFloat=function(str){
var patrn=/^-\d*\.\d+$/;
return patrn.test(str);
};
//校验是否仅中文
ChkUtil.isChinese=function(str){
var patrn=/[\u4E00-\u9FA5\uF900-\uFA2D]+$/;
return patrn.test(str);
};
//校验是否仅ACSII字符
ChkUtil.isAcsii=function(str){
var patrn=/^[\x00-\xFF]+$/;
return patrn.test(str);
};
//校验手机号码
ChkUtil.isMobile = function (str) {
var patrn = /^0?1((3[0-9]{1})|(59)){1}[0-9]{8}$/;
return patrn.test(str);
};
//校验电话号码
ChkUtil.isPhone = function (str) {
var patrn = /^(0[\d]{2,3}-)?\d{6,8}(-\d{3,4})?$/;
return patrn.test(str);
};
//校验URL地址
ChkUtil.isUrl=function(str){
var patrn= /^http[s]?:\/\/[\w-]+(\.[\w-]+)+([\w-\.\/?%&=]*)?$/;
return patrn.test(str);
};
//校验电邮地址
ChkUtil.isEmail = function (str) {
var patrn = /^[\w-]+@[\w-]+(\.[\w-]+)+$/;
return patrn.test(str);
};
//校验邮编
ChkUtil.isZipCode = function (str) {
var patrn = /^\d{6}$/;
return patrn.test(str);
};
//校验合法时间
ChkUtil.isDate = function (str) {
if(!/\d{4}(\.|\/|\-)\d{1,2}(\.|\/|\-)\d{1,2}/.test(str)){
return false;
}
var r = str.match(/\d{1,4}/g);
if(r==null){return false;};
var d= new Date(r[0], r[1]-1, r[2]);
return (d.getFullYear()==r[0]&&(d.getMonth()+1)==r[1]&&d.getDate()==r[2]);
};
//校验字符串:只能输入6-20个字母、数字、下划线(常用手校验用户名和密码)
ChkUtil.isString6_20=function(str){
var patrn=/^(\w){6,20}$/;
return patrn.test(str);
};
------------------------------------------------------------------
调用示例
Java代码 复制代码
1. <script type='text/javascript' src='./common.js'></script>
2. <script type='text/javascript' src='./chkUtil.js'></script>
3. <script type='text/javascript'>
4. function $F(id){
5. if(ChkUtil.isNull(id)){alert("函数$F()的参数不能为空");return false;}
6. return document.getElementById(id).value;
7. }
8. function test(){
9. var area=$F("area");
10. if(area==false)return;
11. alert(ChkUtil.isDate(area));//判断是否是合法日期
12. }