JavaScript通用库
JavaScript在WEB编程中能起到很大的作用,将一些常用的功能写成JavaScript类库。
将下面代码保存为Common.js
类库功能:
1.Trim(str)--去除字符串两边的空格
2.XMLEncode(str)--对字符串进行XML编码
3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)
可以设置显示的提示的文字的字体、颜色、大小以及提示的背景颜色、边框等
4.IsEmpty(obj)--验证输入框是否为空
5.IsInt(objStr,sign,zero)--验证是否为整数,正整数,负整数,以及是否包括零
6.IsFloat(objStr,sign,zero)--验证是否为浮点数,正浮点,负浮点,以及是否包括零
源代码如下:
1/*
2 名字:Common.js
3 功能:通用JavaScript脚本函数库
4 包括:
5 1.Trim(str)--去除字符串两边的空格
6 2.XMLEncode(str)--对字符串进行XML编码
7 3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)
8 4.IsEmpty(obj)--验证输入框是否为空
9 5.IsInt(objStr,sign,zero)--验证是否为整数
10 6.IsFloat(objStr,sign,zero)--验证是否为浮点数
11 7.IsEnLetter(objStr,size)--验证是否为26个字母
12 作者:申旺
13 日期:2004/04/14
14*/
15
16/*
17=========
18字符串操作
19Trim(string):去除字符串两边的空格
20===============================
21*/
22
23/*
24==========================
25LTrim(string):去除左边的空格
26===========================
27*/
28
29function LTrim(str)
30{
31 var whitespace = new String(" \t\n\r");
32 var s = new String(str);
33 if (whitespace.indexOf(s.charAt(0)) != -1)
34 {
35 var j=0, i = s.length;
36 while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
37 {
38 j++;
39 }
40 s = s.substring(j, i);
41 }
42 return s;
43}
44
45/*
46==========================
47RTrim(string):去除右边的空格
48===========================
49*/
50
51function RTrim(str)
52{
53 var whitespace = new String(" \t\n\r");
54 var s = new String(str);
55 if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
56 {
57 var i = s.length - 1;
58 while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
59 {
60 i--;
61 }
62 s = s.substring(0, i+1);
63 }
64 return s;
65}
66
67/*
68
69========================
70Trim(string):去除前后空格
71========================
72*/
73
74function Trim(str)
75{
76 return RTrim(LTrim(str));
77}
78
79/*
80
81==================================
82XMLEncode(string):对字符串进行XML编码
83===================================
84*/
85
86function XMLEncode(str)
87{
88 str=Trim(str);
89 str=str.replace("&","&");
90 str=str.replace("<","<");
91 str=str.replace(">",">");
92 str=str.replace("'","'");
93 str=str.replace("\"",""");
94 return str;
95}
96
97/*
98
99=========
100验证类函数
101=========
102*/
103
104function IsEmpty(obj)
105{
106 obj=document.getElementsByName(obj).item(0);
107 if(Trim(obj.value)=="")
108 {
109 alert("字段不能为空。");
110 if(obj.disabled==false && obj.readOnly==false)
111 {
112 obj.focus();
113 }
114 }
115}
116
117/*
118IsInt(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)
119功能:判断是否为整数、正整数、负整数、正整数+0、负整数+0
120*/
121
122function IsInt(objStr,sign,zero)
123{
124 var reg;
125 var bolzero;
126 if(Trim(objStr)=="")
127 {
128 return false;
129 }
130 else
131 {
132 objStr=objStr.toString();
133 }
134 if((sign==null)||(Trim(sign)==""))
135 {
136 sign="+-";
137 }
138 if((zero==null)||(Trim(zero)==""))
139 {
140 bolzero=false;
141 }
142 else
143 {
144 zero=zero.toString();
145 if(zero=="0")
146 {
147 bolzero=true;
148 }
149 else
150 {
151 alert("检查是否包含0参数,只可为(空、0)");
152 }
153 }
154
155 switch(sign)
156 {
157 case "+-":
158 //整数
159 reg=/(^-?|^\+?)\d+$/;
160 break;
161 case "+":
162 if(!bolzero)
163 {
164 //正整数
165 reg=/^\+?[0-9]*[1-9][0-9]*$/;
166 }
167 else
168 {
169 //正整数+0
170 //reg=/^\+?\d+$/;
171 reg=/^\+?[0-9]*[0-9][0-9]*$/;
172 }
173 break;
174 case "-":
175 if(!bolzero)
176 {
177 //负整数
178 reg=/^-[0-9]*[1-9][0-9]*$/;
179 }
180 else
181 {
182 //负整数+0
183 //reg=/^-\d+$/;
184 reg=/^-[0-9]*[0-9][0-9]*$/;
185 }
186 break;
187 default:
188 alert("检查符号参数,只可为(空、+、-)");
189 return false;
190 break;
191 }
192
193 var r=objStr.match(reg);
194 if(r==null)
195 {
196 return false;
197 }
198 else
199 {
200 return true;
201 }
202}
203
204/*
205IsFloat(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)
206功能:判断是否为浮点数、正浮点数、负浮点数、正浮点数+0、负浮点数+0
207*/
208
209function IsFloat(objStr,sign,zero)
210{
211 var reg;
212 var bolzero;
213
214 if(Trim(objStr)=="")
215 {
216 return false;
217 }
218 else
219 {
220 objStr=objStr.toString();
221
222 }
223
224 if((sign==null)||(Trim(sign)==""))
225 {
226 sign="+-";
227 }
228
229 if((zero==null)||(Trim(zero)==""))
230 {
231 bolzero=false;
232 }
233 else
234 {
235 zero=zero.toString();
236 if(zero=="0")
237 {
238 bolzero=true;
239 }
240 else
241 {
242 alert("检查是否包含0参数,只可为(空、0)");
243 }
244 }
245
246 switch(sign)
247 {
248 case "+-":
249 //浮点数
250 reg=/^((-?|\+?)\d+)(\.\d+)?$/;
251 break;
252 case "+":
253 if(!bolzero)
254 {
255 //正浮点数
256
257 reg=/^\+?(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;
258 }
259 else
260 {
261 //正浮点数+0
262 reg=/^\+?\d+(\.\d+)?$/;
263 }
264 break;
265 case "-":
266 if(!bolzero)
267 {
268 //负浮点数
269 reg=/^-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;
270 }
271 else
272 {
273 //负浮点数+0
274 reg=/^((-\d+(\.\d+)?)|(0+(\.0+)?))$/;
275 }
276 break;
277 default:
278 alert("检查符号参数,只可为(空、+、-)");
279 return false;
280 break;
281 }
282
283 var r=objStr.match(reg);
284 if(r==null)
285 {
286 return false;
287 }
288 else
289 {
290 return true;
291 }
292}
2 名字:Common.js
3 功能:通用JavaScript脚本函数库
4 包括:
5 1.Trim(str)--去除字符串两边的空格
6 2.XMLEncode(str)--对字符串进行XML编码
7 3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)
8 4.IsEmpty(obj)--验证输入框是否为空
9 5.IsInt(objStr,sign,zero)--验证是否为整数
10 6.IsFloat(objStr,sign,zero)--验证是否为浮点数
11 7.IsEnLetter(objStr,size)--验证是否为26个字母
12 作者:申旺
13 日期:2004/04/14
14*/
15
16/*
17=========
18字符串操作
19Trim(string):去除字符串两边的空格
20===============================
21*/
22
23/*
24==========================
25LTrim(string):去除左边的空格
26===========================
27*/
28
29function LTrim(str)
30{
31 var whitespace = new String(" \t\n\r");
32 var s = new String(str);
33 if (whitespace.indexOf(s.charAt(0)) != -1)
34 {
35 var j=0, i = s.length;
36 while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
37 {
38 j++;
39 }
40 s = s.substring(j, i);
41 }
42 return s;
43}
44
45/*
46==========================
47RTrim(string):去除右边的空格
48===========================
49*/
50
51function RTrim(str)
52{
53 var whitespace = new String(" \t\n\r");
54 var s = new String(str);
55 if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
56 {
57 var i = s.length - 1;
58 while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
59 {
60 i--;
61 }
62 s = s.substring(0, i+1);
63 }
64 return s;
65}
66
67/*
68
69========================
70Trim(string):去除前后空格
71========================
72*/
73
74function Trim(str)
75{
76 return RTrim(LTrim(str));
77}
78
79/*
80
81==================================
82XMLEncode(string):对字符串进行XML编码
83===================================
84*/
85
86function XMLEncode(str)
87{
88 str=Trim(str);
89 str=str.replace("&","&");
90 str=str.replace("<","<");
91 str=str.replace(">",">");
92 str=str.replace("'","'");
93 str=str.replace("\"",""");
94 return str;
95}
96
97/*
98
99=========
100验证类函数
101=========
102*/
103
104function IsEmpty(obj)
105{
106 obj=document.getElementsByName(obj).item(0);
107 if(Trim(obj.value)=="")
108 {
109 alert("字段不能为空。");
110 if(obj.disabled==false && obj.readOnly==false)
111 {
112 obj.focus();
113 }
114 }
115}
116
117/*
118IsInt(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)
119功能:判断是否为整数、正整数、负整数、正整数+0、负整数+0
120*/
121
122function IsInt(objStr,sign,zero)
123{
124 var reg;
125 var bolzero;
126 if(Trim(objStr)=="")
127 {
128 return false;
129 }
130 else
131 {
132 objStr=objStr.toString();
133 }
134 if((sign==null)||(Trim(sign)==""))
135 {
136 sign="+-";
137 }
138 if((zero==null)||(Trim(zero)==""))
139 {
140 bolzero=false;
141 }
142 else
143 {
144 zero=zero.toString();
145 if(zero=="0")
146 {
147 bolzero=true;
148 }
149 else
150 {
151 alert("检查是否包含0参数,只可为(空、0)");
152 }
153 }
154
155 switch(sign)
156 {
157 case "+-":
158 //整数
159 reg=/(^-?|^\+?)\d+$/;
160 break;
161 case "+":
162 if(!bolzero)
163 {
164 //正整数
165 reg=/^\+?[0-9]*[1-9][0-9]*$/;
166 }
167 else
168 {
169 //正整数+0
170 //reg=/^\+?\d+$/;
171 reg=/^\+?[0-9]*[0-9][0-9]*$/;
172 }
173 break;
174 case "-":
175 if(!bolzero)
176 {
177 //负整数
178 reg=/^-[0-9]*[1-9][0-9]*$/;
179 }
180 else
181 {
182 //负整数+0
183 //reg=/^-\d+$/;
184 reg=/^-[0-9]*[0-9][0-9]*$/;
185 }
186 break;
187 default:
188 alert("检查符号参数,只可为(空、+、-)");
189 return false;
190 break;
191 }
192
193 var r=objStr.match(reg);
194 if(r==null)
195 {
196 return false;
197 }
198 else
199 {
200 return true;
201 }
202}
203
204/*
205IsFloat(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)
206功能:判断是否为浮点数、正浮点数、负浮点数、正浮点数+0、负浮点数+0
207*/
208
209function IsFloat(objStr,sign,zero)
210{
211 var reg;
212 var bolzero;
213
214 if(Trim(objStr)=="")
215 {
216 return false;
217 }
218 else
219 {
220 objStr=objStr.toString();
221
222 }
223
224 if((sign==null)||(Trim(sign)==""))
225 {
226 sign="+-";
227 }
228
229 if((zero==null)||(Trim(zero)==""))
230 {
231 bolzero=false;
232 }
233 else
234 {
235 zero=zero.toString();
236 if(zero=="0")
237 {
238 bolzero=true;
239 }
240 else
241 {
242 alert("检查是否包含0参数,只可为(空、0)");
243 }
244 }
245
246 switch(sign)
247 {
248 case "+-":
249 //浮点数
250 reg=/^((-?|\+?)\d+)(\.\d+)?$/;
251 break;
252 case "+":
253 if(!bolzero)
254 {
255 //正浮点数
256
257 reg=/^\+?(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;
258 }
259 else
260 {
261 //正浮点数+0
262 reg=/^\+?\d+(\.\d+)?$/;
263 }
264 break;
265 case "-":
266 if(!bolzero)
267 {
268 //负浮点数
269 reg=/^-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/;
270 }
271 else
272 {
273 //负浮点数+0
274 reg=/^((-\d+(\.\d+)?)|(0+(\.0+)?))$/;
275 }
276 break;
277 default:
278 alert("检查符号参数,只可为(空、+、-)");
279 return false;
280 break;
281 }
282
283 var r=objStr.match(reg);
284 if(r==null)
285 {
286 return false;
287 }
288 else
289 {
290 return true;
291 }
292}