1
目录:
2
1
:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制
3
2
.:js判断汉字、判断是否汉字 、只能输入汉字
4
3
:js判断是否输入英文、只能输入英文
5
4
:js只能输入数字,判断数字、验证数字、检测数字、判断是否为数字、只能输入数字
6
5
:只能输入英文字符和数字
7
6
: js email验证 、js 判断email 、信箱
/
邮箱格式验证
8
7
:js字符过滤,屏蔽关键字
9
8
:js密码验证、判断密码
10
2.1
: js 不为空、为空或不是对象 、判断为空 、判断不为空
11
2.2
:比较两个表单项的值是否相同
12
2.3
:表单只能为数字和
"
_
"
,
13
2.4
:表单项输入数值
/
长度限定
14
2.5
:中文
/
英文
/
数字
/
邮件地址合法性判断
15
2.6
:限定表单项不能输入的字符
16
2
.7表单的自符控制
17
2.8
:form文本域的通用校验函数
18
19
1
. 长度限制
20
<
script
>
21
function
test()
22
{
23
if
(document.a.b.value.length
>
50
)
24
{
25
alert(
"
不能超过50个字符!
"
);
26
document.a.b.focus();
27
return
false
;
28
}
29
}
30
<
/
script>
31
<
form name
=
a onsubmit
=
"
return test()
"
>
32
<
textarea name
=
"
b
"
cols
=
"
40
"
wrap
=
"
VIRTUAL
"
rows
=
"
6
"
><
/
textarea>
33
<
input type
=
"
submit
"
name
=
"
Submit
"
value
=
"
check
"
>
34
<
/
form>
35
36
2
. 只能是汉字
37
<
input onkeyup
=
"
value=
"/
oblog
/
value.replace(
/
[^\u4E00-\u9FA5]
/
g,
''
)
"
>
38
39
3.
"
只能是英文
40
<
script language
=
javascript
>
41
function
onlyEng()
42
{
43
if
(
!
(event.keyCode
>=
65
&&
event.keyCode
<=
90
))
44
event.returnvalue
=
false
;
45
}
46
<
/
script>
47
48
<
input onkeydown
=
"
onlyEng();
"
>
49
50
4
. 只能是数字
51
<
script language
=
javascript
>
52
function
onlyNum()
53
{
54
if
(
!
((event.keyCode
>=
48
&&
event.keyCode
<=
57
)
||
(event.keyCode
>=
96
&&
event.keyCode
<=
105
)))
55
//
考虑小键盘上的数字键
56
event.returnvalue
=
false
;
57
}
58
<
/
script>
59
60
<
input onkeydown
=
"
onlyNum();
"
>
61
62
5
. 只能是英文字符和数字
63
<
input onkeyup
=
"
value=
"/
oblog
/
value.replace(
/
[\W]
/
g,
"
'')
"
onbeforepaste
=
"
clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))
"
>
64
65
6
. 验证油箱格式
66
<
SCRIPT LANGUAGE
=
javascript RUNAT
=
Server
>
67
function
isEmail(strEmail) {
68
if
(strEmail.search(
/
^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$
/
)
!=
-
1
)
69
return
true
;
70
else
71
alert(
"
oh
"
);
72
}
73
<
/
SCRIPT>
74
<
input type
=
text onblur
=
isEmail(
this
.value)
>
75
76
7
. 屏蔽关键字(这里屏蔽
***
和
****
)
77
<
script language
=
"
javascript1.2
"
>
78
function
test() {
79
if
((a.b.value.indexOf (
"
***
"
)
==
0
)
||
(a.b.value.indexOf (
"
****
"
)
==
0
)){
80
alert(
"
:)
"
);
81
a.b.focus();
82
return
false
;}
83
}
84
<
/
script>
85
<
form name
=
a onsubmit
=
"
return test()
"
>
86
<
input type
=
text name
=
b
>
87
<
input type
=
"
submit
"
name
=
"
Submit
"
value
=
"
check
"
>
88
<
/
form>
89
90
8
. 两次输入密码是否相同
91
<
FORM METHOD
=
POST ACTION
=
""
>
92
<
input type
=
"
password
"
id
=
"
input1
"
>
93
<
input type
=
"
password
"
id
=
"
input2
"
>
94
<
input type
=
"
button
"
value
=
"
test
"
onclick
=
"
check()
"
>
95
<
/
FORM>
96
<
script
>
97
function
check()
98
{
99
with
(document.all){
100
if
(input1.value
!=
input2.value)
101
{
102
alert(
"
false
"
)
103
input1.value
=
""
;
104
input2.value
=
""
;
105
}
106
else
document.forms[
0
].submit();
107
}
108
}
109
<
/
script>
110
够了吧 :)
111
屏蔽右键 很酷
112
oncontextmenu
=
"
return false
"
ondragstart
=
"
return false
"
onselectstart
=
"
return false
"
113
加在body中
114
115
116
二
117
118
2.1
表单项不能为空
119
120
<
script language
=
"
javascript
"
>
121
<!--
122
function
CheckForm()
123
{
124
if
(document.form.name.value.length
==
0
) {
125
alert(
"
请输入您姓名!
"
);
126
document.form.name.focus();
127
return
false
;
128
}
129
return
true
;
130
}
131
-->
132
<
/
script>
133
134
2.2
比较两个表单项的值是否相同
135
136
<
script language
=
"
javascript
"
>
137
<!--
138
function
CheckForm()
139
if
(document.form.PWD.value
!=
document.form.PWD_Again.value) {
140
alert(
"
您两次输入的密码不一样!请重新输入.
"
);
141
document.ADDUser.PWD.focus();
142
return
false
;
143
}
144
return
true
;
145
}
146
-->
147
<
/
script>
148
149
2.3
表单项只能为数字和
"
_
"
,用于电话
/
银行帐号验证上,可扩展到域名注册等
150
151
<
script language
=
"
javascript
"
>
152
<!--
153
function
isNumber(String)
154
{
155
var
Letters
=
"
1234567890-
"
;
//
可以自己增加可输入值
156
var
i;
157
var
c;
158
if
(String.charAt(
0
)
==
'
-
'
)
159
return
false
;
160
if
( String.charAt( String.length
-
1
)
==
'
-
'
)
161
return
false
;
162
for
( i
=
0
; i
<
String.length; i
++
)
163
{
164
c
=
String.charAt( i );
165
if
(Letters.indexOf( c )
<
0
)
166
return
false
;
167
}
168
return
true
;
169
}
170
function
CheckForm()
171
{
172
if
(
!
isNumber(document.form.TEL.value)) {
173
alert(
"
您的电话号码不合法!
"
);
174
document.form.TEL.focus();
175
return
false
;
176
}
177
return
true
;
178
}
179
-->
180
<
/
script>
181
182
183
2.4
表单项输入数值
/
长度限定
184
185
<
script language
=
"
javascript
"
>
186
<!--
187
function
CheckForm()
188
{
189
if
(document.form.count.value
>
100
||
document.form.count.value
<
1
)
190
{
191
alert(
"
输入数值不能小于零大于100!
"
);
192
document.form.count.focus();
193
return
false
;
194
}
195
if
(document.form.MESSAGE.value.length
<
10
)
196
{
197
alert(
"
输入文字小于10!
"
);
198
document.form.MESSAGE.focus();
199
return
false
;
200
}
201
return
true
;
202
}
203
//
-->
204
<
/
script>
205
206
2.5
中文
/
英文
/
数字
/
邮件地址合法性判断
207
208
<
SCRIPT LANGUAGE
=
"
javascript
"
>
209
<!--
210
211
function
isEnglish(name)
//
英文值检测
212
{
213
if
(name.length
==
0
)
214
return
false
;
215
for
(i
=
0
; i
<
name.length; i
++
) {
216
if
(name.charCodeAt(i)
>
128
)
217
return
false
;
218
}
219
return
true
;
220
}
221
222
function
isChinese(name)
//
中文值检测
223
{
224
if
(name.length
==
0
)
225
return
false
;
226
for
(i
=
0
; i
<
name.length; i
++
) {
227
if
(name.charCodeAt(i)
>
128
)
228
return
true
;
229
}
230
return
false
;
231
}
232
233
function
isMail(name)
//
E-mail值检测
234
{
235
if
(
!
isEnglish(name))
236
return
false
;
237
i
=
name.indexOf(
"
at
"
);
238
j
=
name dot lastIndexOf(
"
at
"
);
239
if
(i
==
-
1
)
240
return
false
;
241
if
(i
!=
j)
242
return
false
;
243
if
(i
==
name dot length)
244
return
false
;
245
return
true
;
246
}
247
248
function
isNumber(name)
//
数值检测
249
{
250
if
(name.length
==
0
)
251
return
false
;
252
for
(i
=
0
; i
<
name.length; i
++
) {
253
if
(name.charAt(i)
<
"
0
"
||
name.charAt(i)
>
"
9
"
)
254
return
false
;
255
}
256
return
true
;
257
}
258
259
function
CheckForm()
260
{
261
if
(
!
isMail(form.Email.value)) {
262
alert(
"
您的电子邮件不合法!
"
);
263
form.Email.focus();
264
return
false
;
265
}
266
if
(
!
isEnglish(form.name.value)) {
267
alert(
"
英文名不合法!
"
);
268
form.name.focus();
269
return
false
;
270
}
271
if
(
!
isChinese(form.cnname.value)) {
272
alert(
"
中文名不合法!
"
);
273
form.cnname.focus();
274
return
false
;
275
}
276
if
(
!
isNumber(form.PublicZipCode.value)) {
277
alert(
"
邮政编码不合法!
"
);
278
form.PublicZipCode.focus();
279
return
false
;
280
}
281
return
true
;
282
}
283
//
-->
284
<
/
SCRIPT>
285
286
2.6
限定表单项不能输入的字符
287
288
<
script language
=
"
javascript
"
>
289
<!--
290
291
function
contain(str,charset)
//
字符串包含测试函数
292
{
293
var
i;
294
for
(i
=
0
;i
<
charset.length;i
++
)
295
if
(str.indexOf(charset.charAt(i))
>=
0
)
296
return
true
;
297
return
false
;
298
}
299
300
function
CheckForm()
301
{
302
if
((contain(document.form.NAME.value,
"
%\(\)><
"
))
||
(contain(document.form.MESSAGE.value,
"
%\(\)><
"
)))
303
{
304
alert(
"
输入了非法字符
"
);
305
document.form.NAME.focus();
306
return
false
;
307
}
308
return
true
;
309
}
310
//
-->
311
<
/
script>
312
313
1
. 检查一段字符串是否全由数字组成
314
---------------------------------------
315
<
script language
=
"
Javascript
"
><!--
316
function
checkNum(str){
return
str.match(
/
\D
/
)
==
null
}
317
alert(checkNum(
"
1232142141
"
))
318
alert(checkNum(
"
123214214a1
"
))
319
//
--></script>
320
321
2
. 怎么判断是否是字符
322
---------------------------------------
323
if
(
/
[^\x00-\xff]
/
g.test(s)) alert(
"
含有汉字
"
);
324
else
alert(
"
全是字符
"
);
325
326
3
. 怎么判断是否含有汉字
327
---------------------------------------
328
if
(escape(str).indexOf(
"
%u
"
)
!=-
1
) alert(
"
含有汉字
"
);
329
else
alert(
"
全是字符
"
);
330
331
4
. 邮箱格式验证
332
---------------------------------------
333
//
函数名:chkemail
334
//
功能介绍:检查是否为Email Address
335
//
参数说明:要检查的字符串
336
//
返回值:0:不是 1:是
337
function
chkemail(a)
338
{
var
i
=
a.length;
339
var
temp
=
a.indexOf(
'
@
'
);
340
var
tempd
=
a.indexOf(
'
.
'
);
341
if
(temp
>
1
) {
342
if
((i
-
temp)
>
3
){
343
if
((i
-
tempd)
>
0
){
344
return
1
;
345
}
346
347
}
348
}
349
return
0
;
350
}
351
352
5
. 数字格式验证
353
---------------------------------------
354
//
函数名:fucCheckNUM
355
//
功能介绍:检查是否为数字
356
//
参数说明:要检查的数字
357
//
返回值:1为是数字,0为不是数字
358
function
fucCheckNUM(NUM)
359
{
360
var
i,j,strTemp;
361
strTemp
=
"
0123456789
"
;
362
if
( NUM.length
==
0
)
363
return
0
364
for
(i
=
0
;i
<
NUM.length;i
++
)
365
{
366
j
=
strTemp.indexOf(NUM.charAt(i));
367
if
(j
==-
1
)
368
{
369
//
说明有字符不是数字
370
return
0
;
371
}
372
}
373
//
说明是数字
374
return
1
;
375
}
376
377
6
. 电话号码格式验证
378
---------------------------------------
379
//
函数名:fucCheckTEL
380
//
功能介绍:检查是否为电话号码
381
//
参数说明:要检查的字符串
382
//
返回值:1为是合法,0为不合法
383
function
fucCheckTEL(TEL)
384
{
385
var
i,j,strTemp;
386
strTemp
=
"
0123456789-()#
"
;
387
for
(i
=
0
;i
<
TEL.length;i
++
)
388
{
389
j
=
strTemp.indexOf(TEL.charAt(i));
390
if
(j
==-
1
)
391
{
392
//
说明有字符不合法
393
return
0
;
394
}
395
}
396
//
说明合法
397
return
1
;
398
}
399
400
7
. 判断输入是否为中文的函数
401
---------------------------------------
402
function
ischinese(s){
403
var
ret
=
true
;
404
for
(
var
i
=
0
;i
<
s.length;i
++
)
405
ret
=
ret
&&
(s.charCodeAt(i)
>=
10000
);
406
return
ret;
407
}
408
409
8
. 综合的判断用户输入的合法性的函数
410
---------------------------------------
411
<
script language
=
"
javascript
"
>
412
//
限制输入字符的位数开始
413
//
m是用户输入,n是要限制的位数
414
function
issmall(m,n)
415
{
416
if
((m
<
n)
&&
(m
>
0
))
417
{
418
return
(
false
);
419
}
420
else
421
{
return
(
true
);}
422
}
423
424
9
. 判断密码是否输入一致
425
---------------------------------------
426
function
issame(str1,str2)
427
{
428
if
(str1
==
str2)
429
{
return
(
true
);}
430
else
431
{
return
(
false
);}
432
}
433
434
10
. 判断用户名是否为数字字母下滑线
435
---------------------------------------
436
function
notchinese(str){
437
var
reg
=
/
[^A-Za-z0-9_]
/
g
438
if
(reg.test(str)){
439
return
(
false
);
440
}
else
{
441
return
(
true
); }
442
}
443
444
2.8
. form文本域的通用校验函数
445
---------------------------------------
446
作用:检测所有必须非空的input文本,比如姓名,账号,邮件地址等等。
447
该校验现在只针对文本域,如果要针对form里面的其他域对象,可以改变判断条件。
448
449
使用方法:在要检测的文本域中加入title文字。文字是在提示信息,你要提示给用户的该字段的中文名。比如要检测用户名
450
html如下
<
input name
=
"
txt_1
"
title
=
"
姓名
"
>
,当然,最好用可视化工具比如dreamweaver什么的来编辑域。
451
如果要检测数字类型数据的话,再把域的id统一为sz.
452
javascript判断日期类型比较麻烦,所以就没有做日期类型校验的程序了.高手可以补充。
453
454
程序比较草,只是提供一个思路。抛砖引玉! :)
455
哦,对了,函数调用方法:
<
form onsubmit
=
"
return dovalidate()
"
>
456
457
function
dovalidate()
458
{
459
fm
=
document.forms[
0
]
//
只检测一个form,如果是多个可以改变判断条件
460
for
(i
=
0
;i
<
fm.length;i
++
)
461
{
462
//
检测判断条件,根据类型不同可以修改
463
if
(fm[i].tagName.toUpperCase()
==
"
INPUT
"
&&
fm[i].type.toUpperCase()
==
"
TEXT
"
&&
(fm[i].title
!=
""
))
464
465
if
(fm[i].value
=
"
/blog/=
""
)//
466
{
467
str_warn1=fm[i].title+
"
不能为空
!
"
;
468
alert(str_warn1);
469
fm[i].focus();
470
return false;
471
}
472
if(fm[i].id.toUpperCase()==
"
SZ
"
)// 数字校验
473
{
474
if(isNaN(fm[i].value))
475
{ str_warn2=fm[i].title+
"
格式不对
"
;
476
alert(str_warn2);
477
fm[i].focus();
478
return false;
479
}
480
}
481
}
482
return true;
483
}
转载于:https://www.cnblogs.com/sunny5156/archive/2013/01/22/2871796.html