原文地址:http://www.codechina.com/resource/html/2006-07/11/151866.html
1
function openBigWin(temUrl)
2
{
3
var Wid;
4
var Hei;
5
var Type;
6
7
Wid=700;
8
Hei=500;
9
Type=\"_blank\";
10
11
window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,toolbar=1,top=10,left=130,width=\"+Wid+\",height=\"+ Hei );
12
return true;
13
}
14
15
16
17
function openMiddleWin(temUrl)
18
{
19
20
21
var Wid=500;
22
var Hei=400;
23
24
var left=(screen.width-Wid)/2;
25
var top=(screen.height-Hei)/2;
26
27
if(top>100)
28
top=100;
29
30
var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );
31
32
return newWin;
33
}
34
35
36
37
function openWin(temUrl,Type,Wid,Hei)
38
{
39
window.open (temUrl,Type, \"scrollbars=no,resizable=yes,top=10,toolbar=0,left=130,width=\"+Wid+\",height=\"+ Hei );
40
return true;
41
}
42
43
44
45
function openNewWin(temUrl,left,top,Wid,Hei)
46
{
47
48
left=(screen.width-Wid)/2;
49
top=(screen.height-Hei)/2;
50
51
if(top>100)
52
top=100;
53
54
var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );
55
56
return newWin;
57
}
58
59
60
61
function openNewWin2(winName,temUrl,Wid,Hei)
62
{
63
64
var left;
65
var top;
66
67
68
left=(screen.width-Wid)/2;
69
top=(screen.height-Hei)/2;
70
71
if(top>100)
72
top=100;
73
74
var newWin=window.open(temUrl,winName, \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );
75
newWin.focus();
76
77
return newWin;
78
}
79
80
function openWin(temUrl,Type,Wid,Hei)
81
{
82
Wid=700;
83
Hei=500;
84
Type=\"_blank\";
85
86
window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,top=10,toolbar=1,left=130,width=\"+Wid+\",height=\"+ Hei );
87
return true;
88
}
89
90
91
92
93
94
function isAlpha(s){
95
96
for (var i=0; i<s.length; i++){
97
98
var Char = s.charAt(i);
99
if ((Char < \"a\" || Char > \"z\") && (Char < \"A\" || Char > \"Z\"))
100
return false;
101
}
102
return true;
103
}
104
105
106
107
108
function isNumeric(p){
109
110
if (p == \"\")
111
return false;
112
113
var l = p.length;
114
var count=0;
115
116
for(var i=0; i<l; i++) {
117
var digit = p.charAt(i);
118
if(digit == \".\" ){
119
++count;
120
if(count>1) return false;
121
}else if(digit < \"0\" || digit > \"9\")
122
return false;
123
}
124
125
return true;
126
}
127
128
129
130
function isEmail(email){
131
132
133
invalidChars = \" /;,:{}[]|*%$#!()`<>?\";
134
if (email == \"\") {
135
return false;
136
}
137
for (i=0; i< invalidChars.length; i++){
138
139
badChar = invalidChars.charAt(i) ;
140
if (email.indexOf(badChar,0) > -1){
141
return false;
142
}
143
}
144
atPos = email.indexOf(\"@\",1);
145
if (atPos == -1){
146
return false;
147
}
148
if (email.indexOf(\"@\", atPos+1) != -1) {
149
return false;
150
}
151
152
periodPos = email.indexOf(\".\",atPos)
153
if(periodPos == -1){
154
return false;
155
}
156
157
if ( atPos +2 > periodPos) {
158
return false;
159
}
160
161
if ( periodPos +3 > email.length){
162
return false;
163
}
164
165
return true;
166
}
167
168
169
170
171
// pageNO :this pageNO
172
//nextPage: first,last,next,up,number(eg:777777)
173
174
175
function goPage(searchForm,pageNO,pageCounter,nextPage){
176
177
var url;
178
var customPageNO;
179
180
//alert(\"hello\");
181
182
url=searchForm.action+\"&pageNO=\";
183
184
185
if (nextPage==\"first\"){
186
187
188
if (pageNO==1){
189
alert(\"已经是第一页!\");
190
return false;
191
}else{
192
pageNO=1;
193
url=url+pageNO;
194
195
searchForm.action=url;
196
searchForm.submit();
197
}
198
199
200
}else if (nextPage==\"up\"){
201
202
203
if (pageNO==1){
204
alert(\"已经是第一页!\");
205
return false;
206
}else{
207
pageNO=pageNO-1;
208
url=url+pageNO;
209
210
searchForm.action=url;
211
searchForm.submit();
212
}
213
214
215
216
}else if (nextPage==\"next\"){
217
218
219
if (pageNO==pageCounter){
220
alert(\"已经是最后一页\");
221
return false;
222
}else{
223
224
pageNO=parseInt(pageNO)+1+\"\";
225
url=url+pageNO;
226
227
228
229
searchForm.action=url;
230
searchForm.submit();
231
232
233
}
234
235
236
}else if (nextPage==\"last\"){
237
238
//alert(\"pageNO:\" +pageNO + \" pageCounter:\"+pageCounter);
239
240
if (pageNO==pageCounter){
241
alert(\"已经是最后一页\");
242
return false;
243
}else{
244
245
pageNO=pageCounter
246
url=url+pageNO;
247
248
249
searchForm.action=url;
250
searchForm.submit();
251
252
253
}
254
255
}else if (isNumeric(nextPage) ){
256
257
258
if (pageNO==nextPage){
259
260
alert(\"已经是第\" +pageNO +\"页!\");
261
return false;
262
263
}
264
265
pageNO=nextPage;
266
267
if (pageNO>=1 && pageNO<=pageCounter){
268
269
url=url+pageNO;
270
271
272
searchForm.action=url;
273
searchForm.submit();
274
275
}else{
276
277
alert(\"页面超出了范围!\");
278
return false;
279
280
281
}
282
283
284
285
}
286
return false;
287
}
288
289
290
/*
291
文件名: check_data.js
292
功 能: 主要进行数据校验
293
更 新: 金永俊 2004年4月16日
294
戴 嘉 2004.05.11
295
*/
296
297
//-------------------------------
298
// 函数名:isNull(i_field,i_value)
299
// 功能介绍:检查输入是否为非空
300
// 参数说明:数据项,输入的对应值
301
// 返回值 :0-非空,1-为空
302
//-------------------------------
303
function isNull(i_field,i_value)
304
{
305
if (i_value==null || jstrim(i_value)==\"\")
306
{
307
return 1;
308
}
309
else
310
{
311
alert(\"\'\"+i_field+\"\' 要求为空!\");
312
return 0;
313
}
314
}
315
316
//-------------------------------
317
// 函数名:notNull(i_field,i_value)
318
// 功能介绍:检查输入是否为非空
319
// 参数说明:数据项,输入的对应值
320
// 返回值 :1-非空,0-为空
321
//-------------------------------
322
function notNull(i_field,i_value)
323
{
324
325
if (i_value==null || jstrim(i_value)==\"\")
326
{
327
alert(\"\'\"+i_field+\"\' 不可为空!\");
328
return 0;
329
}
330
331
return 1;
332
333
334
}
335
336
//-------------------------------
337
// 函数名:isNum(i_field,i_value)
338
// 功能介绍:检查输入字符串是否为数字
339
// 参数说明:数据项,输入的对应值
340
// 返回值 :1-是数字,0-非数字
341
//-------------------------------
342
function isNum(i_field,i_value)
343
{
344
if (notNull(i_field,i_value)==0)
345
{return 0;
346
}
347
348
re=new RegExp(\"[^0-9]\");
349
var s;
350
if(s=i_value.match(re))
351
{
352
alert(\"\'\"+i_field+\"\' 中含有非法字符 \'\"+s+\"\' !\");
353
return 0;
354
}
355
return 1;
356
}
357
358
//-------------------------------
359
// 函数名:isGreatNum(i_field,i_value,i_value1)
360
// 功能介绍:检查输入字符串是否是数字并且大于i_value1
361
// 参数说明:数据项,输入的对应值,比较数值
362
// 返回值 :1-给定的i_value为数字且大于i_value1,
363
// 0-非数字或者i_value小于等于i_value1
364
//
365
// 戴嘉 2004.05.11
366
//-------------------------------
367
function isGreatNum(i_field,i_value,i_value1)
368
{
369
//校验输入的是否为数值
370
if(isNum(i_field,i_value)==0)
371
return 0;
372
else
373
{
374
if(i_value<=i_value1)
375
return 0;
376
}
377
378
return 1;
379
}
380
381
//-------------------------------
382
// 函数名:isSmallNum(i_field,i_value,i_value1)
383
// 功能介绍:检查输入字符串是否是数字并且小于i_value1
384
// 参数说明:数据项,输入的对应值,比较数值
385
// 返回值 :1-给定的i_value为数字且小于i_value1,
386
// 0-非数字或者i_value大于等于i_value1
387
//
388
// 戴嘉 2004.05.11
389
//-------------------------------
390
function isSmallNum(i_field,i_value,i_value1)
391
{
392
//校验输入的是否为数值
393
if(isNum(i_field,i_value)==0)
394
return 0;
395
else
396
{
397
if(i_value>=i_value1)
398
return 0;
399
}
400
401
return 1;
402
}
403
404
405
//-------------------------------
406
// 函数名:isDate(i_field,thedate)
407
// 功能介绍:校验字符串是否为日期格式
408
// 参数说明:数据项,输入的字符串
409
// 返回值 :0-不是,1--是
410
//-------------------------------
411
412
function isDate(i_field,thedate)
413
{
414
if (!(thedate.length==8 || thedate.length==10))
415
{ alert(\"\'\"+i_field+\"\'日期格式不对,\\n要求为yyyymmdd或yyyy-mm-dd!\");
416
return 0;
417
}
418
if (thedate.length==8)
419
{
420
thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);
421
}
422
423
var reg = /^(\\d{1,4})(-)(\\d{1,2})\\2(\\d{1,2})$/;
424
var r = thedate.match(reg);
425
426
if (r==null)
427
{
428
alert(\"请输入正确的\'\"+i_field+\"\' !\");
429
return 0;
430
431
}
432
var d= new Date(r[1],r[3]-1,r[4]);
433
var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate()
434
var newDate=r[1]+r[2]+(r[3]-0)+r[2]+(r[4]-0)
435
//alert(\"----------r:\"+r+\" d:\"+d+\" newStr:\"+newStr+\" newDate:\"+newDate);
436
if (newStr==newDate)
437
{
438
return 1;
439
}
440
alert(\"\'\"+i_field+\"\'日期格式不对,\\n要求为yyyymmdd或yyyy-mm-dd!\");
441
return 0;
442
}
443
444
//-------------------------------
445
// 函数名:changeDate(thedate)
446
// 功能介绍:日期yyyymmdd转换成yyyy-mm-dd格式
447
// 参数说明:输入日期
448
// 返回值 :0-不是,1--是
449
//-------------------------------
450
451
function changeDate(thedate)
452
{
453
454
if (thedate.length==8)
455
{
456
thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);
457
}
458
459
return thedate;
460
461
}
462
463
//-------------------------------
464
// 函数名:isLength(i_field,i_length,i_value)
465
// 功能介绍:检查输入值是否为指定长度
466
// 参数说明:数据项,要求长度,值
467
// 返回值 :1-是指定长度,0-不是
468
//-------------------------------
469
function isLength(i_field,i_length,i_value)
470
{// alert(\"---长度要求:\"+i_length+\" \"+i_value.length);
471
if (!(i_value.length==i_length))
472
{
473
alert(\"\'\"+i_field+\"\' 的长度要求为\' \"+i_length+\" \'!\");
474
return 0;
475
}
476
return 1;
477
}
478
479
//-------------------------------
480
// 函数名:dyLength(i_field,i_length,i_value)
481
// 功能介绍:检查输入值是否达到指定长度以上
482
// 参数说明:数据项,要求长度,值
483
// 返回值 :1-符合,0-不是
484
//-------------------------------
485
function dyLength(i_field,i_length,i_value)
486
{ //alert(\"---长度要求:\"+i_length+\" \"+i_value.length);
487
if (i_value.length<i_length)
488
{
489
alert(\"\'\"+i_field+\"\' 的长度至少为 \'\"+i_length+\"\'!\");
490
return 0;
491
}
492
return 1;
493
}
494
495
//-------------------------------
496
// 函数名:xyLength(i_field,i_length,i_value)
497
// 功能介绍:检查输入值不要超过指定长度
498
// 参数说明:数据项,要求长度,值
499
// 返回值 :1-符合,0-不是
500
//-------------------------------
501
function xyLength(i_field,i_length,i_value)
502
{ //alert(\"---长度要求:\"+i_length+\" \"+i_value.length);
503
if (i_value.length>i_length)
504
{
505
alert(\"\'\"+i_field+\"\' 的长度最长为 \'\"+i_length+\"\' !\");
506
return 0;
507
}
508
return 1;
509
}
510
511
//-------------------------------
512
// 函数名:check_hm(标签,长度,i_value)
513
// 参数说明:标签,长度,值。
514
// 功能介绍:检查输入号码字符串长度是否满足;是否全数字。
515
// 返回值 :1-是,false-不是
516
//-------------------------------
517
function check_hm(i_field,i_length,i_value)
518
{
519
520
if (isLength(i_field,i_length,i_value)==0)
521
{
522
return 0;
523
}
524
if (isNum(i_field,i_value)==0)
525
{
526
return 0;
527
}
528
return 1;
529
}
530
531
//-------------------------------
532
// 函数名:check_yzbm(i_value)
533
// 参数说明:邮政编码值。
534
// 功能介绍:检查邮政编码是否是6位长数字。
535
// 返回值 :1-是,false-不是
536
//-------------------------------
537
function check_yzbm(i_value)
538
{
539
540
if (isLength(\"邮政编码\",\"6\",i_value)==0)
541
{
542
return 0;
543
}
544
if (isNum(\"邮政编码\",i_value)==0)
545
{
546
return 0;
547
}
548
return 1;
549
}//-------------------------------
550
// 函数名:check_zjhm(zjmc,obj)
551
// 参数说明:证件名称,证件号码。
552
// 功能介绍:检查身份证号码合法性。
553
// 对身份证检查是否为全数字;出生日期格式是否正确;是否<=18,<=70;校验码检查
554
// 返回值 :1-是,0-不
555
//-------------------------------
556
function check_zjhm(zjmc,zjhm)
557
{
558
559
var birthday=\"\";
560
var zjhm1=\"\";
561
var zjhm2=\"\";
562
563
var s=\"\";
564
if (notNull(\"证件号码\",zjhm)==0) { return 0; }
565
if(zjmc==\"A\") //身份证号码
566
{
567
if(!(zjhm.length==15 || zjhm.length==18) )
568
{
569
alert(\"身份证长度不对,请检查!\") ;
570
return 0;
571
}
572
zjhm1=zjhm;
573
if (zjhm.length==18)
574
{
575
zjhm1=zjhm.substr(0,17) ;
576
zjhm2=zjhm.substr(17,1);
577
}
578
579
re=new RegExp(\"[^0-9]\");
580
if(s=zjhm1.match(re))
581
{
582
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");
583
return 0;
584
}
585
//取出生日期
586
if(zjhm.length==15 )
587
{
588
birthday=\"19\"+zjhm.substr(6,6);
589
}
590
else
591
{
592
re=new RegExp(\"[^0-9X]\");
593
if(s=zjhm2.match(re)) //18位身份证对末位要求数字或字符
594
{
595
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");
596
return 0;
597
}
598
birthday=zjhm.substr(6,8);
599
}
600
birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)
601
//alert(\"birthday\"+birthday)
602
603
if(isDate(\"证件号码\",birthday)==0) //检查日期的合法性
604
{
605
return 0;
606
}
607
608
var nl=cal_years(birthday);//求年龄
609
610
//if (nl-0<18 || nl>70)
611
if (nl-0<18)
612
{
613
alert(\"年龄要求 18岁以上 ,当前 \"+nl+\" !\");
614
return 0;
615
}
616
if(zjhm.length==18 )
617
{
618
return(sfzCheck(zjhm)); //对18位长的身份证进行末位校验
619
}
620
}
621
else
622
{if (zjhm.length>17){
623
624
alert(\"非‘居民身份证’长度不得超过17位,请检查!\") ;
625
return 0;
626
}
627
}
628
629
return 1;
630
}
631
function check_zjhmNoAge(zjmc,zjhm)
632
{
633
634
var birthday=\"\";
635
var zjhm1=\"\";
636
var zjhm2=\"\";
637
638
var s=\"\";
639
if (notNull(\"证件号码\",zjhm)==0) { return 0; }
640
if(zjmc==\"A\") //身份证号码
641
{
642
if(!(zjhm.length==15 || zjhm.length==18) )
643
{
644
alert(\"身份证长度不对,请检查!\") ;
645
return 0;
646
}
647
zjhm1=zjhm;
648
if (zjhm.length==18)
649
{
650
zjhm1=zjhm.substr(0,17) ;
651
zjhm2=zjhm.substr(17,1);
652
}
653
654
re=new RegExp(\"[^0-9]\");
655
if(s=zjhm1.match(re))
656
{
657
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");
658
return 0;
659
}
660
//取出生日期
661
if(zjhm.length==15 )
662
{
663
birthday=\"19\"+zjhm.substr(6,6);
664
}
665
else
666
{
667
re=new RegExp(\"[^0-9X]\");
668
if(s=zjhm2.match(re)) //18位身份证对末位要求数字或字符
669
{
670
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");
671
return 0;
672
}
673
birthday=zjhm.substr(6,8);
674
}
675
birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)
676
//alert(\"birthday\"+birthday)
677
678
if(isDate(\"证件号码\",birthday)==0) //检查日期的合法性
679
{
680
return 0;
681
}
682
683
684
if(zjhm.length==18 )
685
{
686
return(sfzCheck(zjhm)); //对18位长的身份证进行末位校验
687
}
688
}
689
else
690
{if (zjhm.length>17){
691
692
alert(\"非‘居民身份证’长度不得超过17位,请检查!\") ;
693
return 0;
694
}
695
}
696
697
return 1;
698
}
699
700
function id15to18(zjhm)
701
{
702
703
704
var strJiaoYan =new Array(\"1\", \"0\", \"X\", \"9\", \"8\", \"7\", \"6\", \"5\", \"4\", \"3\", \"2\");
705
var intQuan =new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);
706
var ll_sum=0;
707
var i;
708
var ls_check;
709
zjhm = zjhm.substring(0, 6) + \"19\" + zjhm.substring(6);
710
for (i=0;i<=16;i++){
711
ll_sum=ll_sum+(parseFloat(zjhm.substr(i,1)))*intQuan[i];
712
}
713
ll_sum = ll_sum % 11;
714
zjhm=zjhm + strJiaoYan[ll_sum];
715
return zjhm;
716
}
717
//-------------------------------
718
// 函数名 :check_sg(i_value)
719
// 参数说明:身高。
720
// 功能介绍:检查身高是否为数字;是否>=100,<=250
721
// 返回值 :1-是,0-不是
722
//-------------------------------
723
724
function check_sg(i_value)
725
{
726
if(isNum(\"身高\",i_value)==0) //检查身高是否为数字
727
{
728
return 0;
729
}
730
else
731
{
732
if ((i_value-0)<100 ||(i_value-0)>250)
733
{
734
alert(\"\'身高\'合理范围应在 100--250 !\");
735
return 0;
736
}
737
}
738
return 1;
739
}
740
741
//-------------------------------
742
// 函数名 :check_sl(i_value)
743
// 参数说明:视力。
744
// 功能介绍:检查视力是否为数字;是否>=4.9,<=5.5
745
// 返回值 :1-是,false-不是
746
//-------------------------------
747
748
function check_sl(i_value)
749
{
750
var reg = /^(\\d{1,1})(\\.)(\\d{1,1})$/;
751
752
if (document.all[\"zsl\"].value.length==2)
753
{
754
document.all[\"zsl\"].value=document.all[\"zsl\"].value.substr(0,1)+\".\"+document.all[\"zsl\"].value.substr(1,1);
755
}
756
if (document.all[\"ysl\"].value.length==2)
757
{
758
document.all[\"ysl\"].value=document.all[\"ysl\"].value.substr(0,1)+\".\"+document.all[\"ysl\"].value.substr(1,1);
759
}
760
var r = document.all[\"zsl\"].value.match(reg);
761
var r1 = document.all[\"ysl\"].value.match(reg);
762
if(r==null)
763
{
764
alert(\"左视力的格式应为:x.x !\")
765
return 0;
766
}
767
if(r1==null)
768
{
769
alert(\"右视力的格式应为:x.x !\")
770
return 0;
771
}
772
773
if ((document.all[\"zsl\"].value-0)<4.9 || (document.all[\"zsl\"].value-0)>5.5)
774
{
775
alert(\"\'左视力\'应在 4.9--5.5 范围!\");
776
return 0;
777
}
778
if ((document.all[\"ysl\"].value-0)<4.9 || (document.all[\"ysl\"].value-0)>5.5)
779
{
780
alert(\"\'右视力\'应在 4.9--5.5 范围!\");
781
return 0;
782
}
783
return 1;
784
}
785
786
//-------------------------------
787
// 函数名:isHg(bsl,tl,sz,qgjb)
788
// 功能介绍:辨色力,听力,上肢,躯干颈部是否合格
789
// 参数说明:辨色力,听力,上肢,躯干颈部
790
// 返回值 :1-符合申请,0-不符合
791
//-------------------------------
792
793
function isHg(bsl,tl,sz,qgjb)
794
{//alert(bsl+tl+sz+qgjb)
795
if (!(bsl==1))
796
{
797
alert(\"\'辨色力\'不合格者不能申请!\");
798
return 0;
799
}
800
if (!(tl==1))
801
{
802
alert(\"\'听力\'不合格者不能申请!\");
803
return 0;
804
}
805
if (!(sz==1))
806
{
807
alert(\"\'上肢\'不合格者不能申请!\");
808
return 0;
809
}
810
if (!(qgjb==1))
811
{
812
alert(\"\'躯干颈部\'不合格者不能申请!\");
813
return 0;
814
}
815
if((document.all[\"yxz\"].value)==0)
816
{
817
alert(\"右下肢必须合格!\")
818
document.all.yxz.focus();
819
return 0;
820
}
821
return 1;
822
}
823
824
//-------------------------------
825
// 函数名:sfzCheck(hm)
826
// 功能介绍:对18位长的身份证进行末位校验
827
// 参数说明:身份证号码
828
// 返回值 :1-符合,0-不符合
829
//-------------------------------
830
831
function sfzCheck(hm)
832
{
833
834
var w=new Array();
835
var ll_sum;
836
var ll_i;
837
var ls_check;
838
839
840
if(hm.length==15) //长度15,直接返回true
841
return true;
842
843
if(hm.length!=15 && hm.length!=18){
844
845
alert(\"身份证号码长度不正确\");
846
return false;
847
848
}
849
850
w[0]=7;
851
w[1]=9;
852
w[2]=10;
853
w[3]=5;
854
w[4]=8;
855
w[5]=4;
856
w[6]=2;
857
w[7]=1;
858
w[8]=6;
859
w[9]=3;
860
w[10]=7;
861
w[11]=9;
862
w[12]=10;
863
w[13]=5;
864
w[14]=8;
865
w[15]=4;
866
w[16]=2;
867
ll_sum=0;
868
869
for (ll_i=0;ll_i<=16;ll_i++)
870
{ //alert(\"ll_i:\"+ll_i+\" \"+hm.substr(ll_i,1)+\"w[ll_i]:\"+w[ll_i]+\" ll_sum:\"+ll_sum);
871
ll_sum=ll_sum+(hm.substr(ll_i,1)-0)*w[ll_i];
872
873
}
874
ll_sum=ll_sum % 11;
875
876
877
switch (ll_sum)
878
{
879
case 0 :
880
ls_check=\"1\";
881
break;
882
case 1 :
883
ls_check=\"0\";
884
break;
885
case 2 :
886
ls_check=\"X\";
887
break;
888
case 3 :
889
ls_check=\"9\";
890
break;
891
case 4 :
892
ls_check=\"8\";
893
break;
894
case 5 :
895
ls_check=\"7\";
896
break;
897
case 6 :
898
ls_check=\"6\";
899
break;
900
case 7 :
901
ls_check=\"5\";
902
break;
903
case 8 :
904
ls_check=\"4\";
905
break;
906
case 9 :
907
ls_check=\"3\";
908
break;
909
case 10 :
910
ls_check=\"2\";
911
break;
912
}
913
914
if (hm.substr(17,1) != ls_check)
915
{
916
alert(\"身份证校验错误!------ 末位应该:\"+ls_check+\" 实际:\"+hm.substr(hm.length-1,1));
917
return 0;
918
}
919
return 1
920
}
921
922
function comm_check(){
923
if (document.all[\"xm\"].value.length<2)
924
{
925
document.all[\"xm\"].focus();
926
alert(\"\'姓名\'长度至少两汉字!\");
927
return 0;
928
}
929
if (document.all[\"lxdh\"].value.length<6)
930
{
931
document.all[\"lxdh\"].focus();
932
alert(\"\'联系电话\'长度至少6位!\");
933
return 0;
934
}
935
return 1;
936
}
937
938
//-------------------------------
939
// 函数名 :check_zjcx(s_value,s_cx_dm)
940
// 参数说明:准驾车型字符串,合法的准驾车行字符串数组。
941
// 功能介绍:检查车型输入是否正确,只检查是否包含合法的准驾车行字符串,重复、次序颠倒不认为是错误
942
// 返回值 :1-包含合法的准驾车行,0-不合法
943
//
944
// 戴嘉 2004.05.12
945
//-------------------------------
946
function check_zjcx(s_value,s_cx_dm)
947
{
948
//合法的准驾车行字符串数组
949
//var s_cx_dm=new Array(\"A1\",\"A2\",\"A3\",\"B1\",\"B2\",\"C1\",\"C2\",\"C3\",\"C4\",\"D\",\"E\",\"F\",\"M\",\"N\",\"P\");
950
//字符串数组的长度
951
var s_cx_input; //存放需要检验的字符串
952
var i_pos; //查找子串定位
953
var i;
954
955
s_cx_input=s_value;
956
for(i in s_cx_dm) //对合法准驾车行字符串数组轮循
957
{
958
do
959
{
960
i_pos=s_cx_input.indexOf(s_cx_dm[i]); //是否包含当前车型
961
if(i_pos!=-1) //包含
962
{
963
//去掉找到的子串
964
s_cx_input=s_cx_input.slice(0,i_pos)+s_cx_input.slice(i_pos+s_cx_dm[i].length);
965
}
966
}while(i_pos!=-1); //找不到当前车型子串,进入下一车型子串查找
967
}
968
969
if(s_cx_input.length==0) //输入字符串包含的都是合法的车型子串(全部被去掉了)
970
return 1;
971
else //输入字符串还包含有非法的字符串
972
return 0;
973
}
974
975
976
//-------------------------------
977
// 函数名:DateAddMonth(strDate,iMonths)
978
// 功能介绍:获得日期加上iMonths月数后的日期
979
// 参数说明:strDate 日期
980
// 返回值 :无返回值
981
//-------------------------------
982
function DateAddMonth(strDate,iMonths){
983
var thisYear = parseFloat(strDate.substring(0,4));
984
var thisMonth = parseFloat(strDate.substring(5,7));
985
var thisDate = parseFloat(strDate.substring(8,10));
986
var d =thisYear *12 + thisMonth + iMonths;
987
988
var newMonth = d % 12;
989
if (newMonth==0) {
990
newMonth=12;
991
}
992
var newYear = (d - newMonth) /12;
993
var newDate = thisDate;
994
var iMonthLastDate=getMonthLastDate(newYear,newMonth)
995
if (newDate>iMonthLastDate) newDate=iMonthLastDate;
996
var newDay=\"\";
997
998
newDay += newYear;
999
if (newMonth<10) {
1000
newDay +=\"-\" + \"0\" + newMonth;
1001
}else{
1002
newDay +=\"-\" + newMonth;
1003
}
1004
1005
if (newDate<10) {
1006
newDay +=\"-\" + \"0\" + newDate;
1007
}else{
1008
newDay +=\"-\" + newDate;
1009
}
1010
return(newDay); // 返回日期。
1011
}
1012
1013
function getMonthLastDate(iYear,iMonth){
1014
var dateArray= new Array(31,28,31,30,31,30,31,31,30,31,30,31);
1015
var days=dateArray[iMonth-1];
1016
if ((((iYear % 4 == 0) && (iYear % 100 != 0)) || (iYear % 400 == 0)) && iMonth==2){
1017
days=29;
1018
}
1019
return days;
1020
}
1021
1022
var keyvalue=\"\";
1023
var srcStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";
1024
var objName=\"\";
1025
function findCode(event,obj)
1026
{
1027
if (objName != obj.name){
1028
objName=obj.name;
1029
keyvalue=\"\";
1030
}
1031
if (event.keyCode==13 || event.keyCode==9 ) {
1032
keyvalue=\"\";
1033
return true;
1034
}
1035
1036
//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
1037
// keyvalue=\"\";
1038
keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();
1039
//alert(keyvalue);
1040
for(var i=0;i<obj.options.length;i++)
1041
{
1042
if(obj.options[i].value.indexOf(keyvalue)!=-1)
1043
{
1044
obj.value=obj.options[i].value;
1045
if (obj.options[i].value==keyvalue){
1046
objName=\"\"
1047
}
1048
return true;
1049
}
1050
}
1051
}
1052
function findName(event,obj) //根据代码取名称
1053
{
1054
if (objName != obj.name){
1055
objName=obj.name;
1056
keyvalue=\"\";
1057
}
1058
if (event.keyCode==13 || event.keyCode==9 ) {
1059
keyvalue=\"\";
1060
return true;
1061
}
1062
1063
//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
1064
// keyvalue=\"\";
1065
keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();
1066
//alert(keyvalue);
1067
//alert(obj.options.length);
1068
for(var i=0;i<obj.options.length;i++)
1069
{
1070
//alert(obj.options[i].text);
1071
1072
if(obj.options[i].text.indexOf(keyvalue)!=-1)
1073
{
1074
obj.value=obj.options[i].value;
1075
return true;
1076
}
1077
}
1078
}
1079
//自动清除输入框中的空格
1080
function ignoreSpaces(string) {
1081
var temp = \"\";
1082
string = \'\' + string;
1083
splitstring = string.split(\" \"); //双引号之间是个空格;
1084
for(i = 0; i < splitstring.length; i++)
1085
temp += splitstring[i];
1086
return temp;
1087
}
1088
1089
1090
/*
1091
文件名: function.js
1092
功 能: 常用的功能库
1093
功能块:
1094
1095
更 新: 金永俊 2004年4月16日
1096
戴嘉 2004.05.20
1097
*/
1098
1099
1100
var todaystr;
1101
todaystr=new Date();
1102
1103
1104
//-------------------------------
1105
// 函 数 名:cal_years(rq)
1106
// 功能介绍:计算指定日期到今天是多少年.
1107
// 参数说明:日期
1108
// 返 回:年数
1109
//-------------------------------
1110
1111
function cal_years(rq)
1112
{
1113
var years;
1114
//var dDate = new Date(); //系统日期(系统日期应该大于rq)
1115
var dDate=todaystr;
1116
var month1= dDate.getMonth()+1;
1117
var year1= dDate.getFullYear();
1118
var day1=dDate.getDate()
1119
var year2= rq.substr(0,4);
1120
var month2= rq.substr(5,2);
1121
var day2=rq.substr(8,2);
1122
//alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);
1123
years = year1 - year2 - 0;
1124
if (month2 > month1) //月份未到,years-1
1125
{
1126
years = years - 1;
1127
}
1128
else
1129
{
1130
if ( (month1 == month2) && (day2 > day1)) //月份到了,但日未到,years-1
1131
{
1132
years = years - 1;
1133
}
1134
}
1135
//alert(\"-----------years-\"+years);
1136
return years;
1137
}
1138
1139
//-------------------------------
1140
// 函 数 名:cal_years1(rq1,rq2)
1141
// 功能介绍:计算指定日期到今天是多少年.(rq1-rq2)
1142
// 参数说明:日期1,日期2
1143
// 返 回:年数
1144
//-------------------------------
1145
1146
function cal_years1(rq1,rq2)
1147
{
1148
var years;
1149
var year1= rq1.substr(0,4);
1150
var month1= rq1.substr(5,2);
1151
var day1=rq1.substr(8,2);
1152
var year2= rq2.substr(0,4);
1153
var month2= rq2.substr(5,2);
1154
var day2=rq2.substr(8,2);
1155
//alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);
1156
years = year1 - year2 - 0;
1157
if (month2 > month1) //月份未到,years-1
1158
{
1159
years = years - 1;
1160
}
1161
else
1162
{
1163
if ( (month1 == month2) && (day2 > day1)) //月份到了,但日未到,years-1
1164
{
1165
years = years - 1;
1166
}
1167
}
1168
//alert(\"-----------years-\"+years);
1169
return years;
1170
}
1171
//-------------------------------
1172
// 函 数 名:cal_days(rq1,rq2)
1173
// 功能介绍:计算两个日期间隔天数(要求rq2>=rq1).
1174
// 参数说明:日期1,日期2
1175
// 返 回:天数
1176
//-------------------------------
1177
1178
function cal_days(rq1,rq2)
1179
{ var d, s, t, d1 , d2, s1 , s2;
1349
if(view_type==\"2\")
function openBigWin(temUrl)2
{3
var Wid;4
var Hei;5
var Type;6

7
Wid=700;8
Hei=500;9
Type=\"_blank\";10

11
window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,toolbar=1,top=10,left=130,width=\"+Wid+\",height=\"+ Hei );12
return true;13
}14

15
16

17
function openMiddleWin(temUrl)18
{19

20

21
var Wid=500;22
var Hei=400;23

24
var left=(screen.width-Wid)/2;25
var top=(screen.height-Hei)/2;26

27
if(top>100)28
top=100;29

30
var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );31

32
return newWin;33
}34

35
36

37
function openWin(temUrl,Type,Wid,Hei)38
{39
window.open (temUrl,Type, \"scrollbars=no,resizable=yes,top=10,toolbar=0,left=130,width=\"+Wid+\",height=\"+ Hei );40
return true;41
}42

43
44

45
function openNewWin(temUrl,left,top,Wid,Hei)46
{47

48
left=(screen.width-Wid)/2;49
top=(screen.height-Hei)/2;50

51
if(top>100)52
top=100;53

54
var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );55

56
return newWin;57
}58

59
60

61
function openNewWin2(winName,temUrl,Wid,Hei)62
{63

64
var left;65
var top;66

67

68
left=(screen.width-Wid)/2;69
top=(screen.height-Hei)/2;70

71
if(top>100)72
top=100;73

74
var newWin=window.open(temUrl,winName, \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );75
newWin.focus();76

77
return newWin;78
}79

80
function openWin(temUrl,Type,Wid,Hei)81
{82
Wid=700;83
Hei=500;84
Type=\"_blank\";85

86
window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,top=10,toolbar=1,left=130,width=\"+Wid+\",height=\"+ Hei );87
return true;88
}89

90
91

92
93

94
function isAlpha(s){95

96
for (var i=0; i<s.length; i++){97

98
var Char = s.charAt(i);99
if ((Char < \"a\" || Char > \"z\") && (Char < \"A\" || Char > \"Z\"))100
return false;101
}102
return true;103
}104

105
106

107

108
function isNumeric(p){109

110
if (p == \"\")111
return false;112

113
var l = p.length;114
var count=0;115

116
for(var i=0; i<l; i++) {117
var digit = p.charAt(i);118
if(digit == \".\" ){119
++count;120
if(count>1) return false;121
}else if(digit < \"0\" || digit > \"9\")122
return false;123
}124

125
return true;126
}127

128
129

130
function isEmail(email){131

132

133
invalidChars = \" /;,:{}[]|*%$#!()`<>?\";134
if (email == \"\") {135
return false;136
}137
for (i=0; i< invalidChars.length; i++){138

139
badChar = invalidChars.charAt(i) ;140
if (email.indexOf(badChar,0) > -1){141
return false;142
}143
}144
atPos = email.indexOf(\"@\",1);145
if (atPos == -1){146
return false;147
}148
if (email.indexOf(\"@\", atPos+1) != -1) {149
return false;150
}151

152
periodPos = email.indexOf(\".\",atPos)153
if(periodPos == -1){154
return false;155
}156

157
if ( atPos +2 > periodPos) {158
return false;159
}160

161
if ( periodPos +3 > email.length){162
return false;163
}164

165
return true;166
}167

168
169

170

171
// pageNO :this pageNO172
//nextPage: first,last,next,up,number(eg:777777)173

174

175
function goPage(searchForm,pageNO,pageCounter,nextPage){176

177
var url;178
var customPageNO;179

180
//alert(\"hello\");181

182
url=searchForm.action+\"&pageNO=\";183

184

185
if (nextPage==\"first\"){186

187

188
if (pageNO==1){189
alert(\"已经是第一页!\");190
return false;191
}else{192
pageNO=1;193
url=url+pageNO;194

195
searchForm.action=url;196
searchForm.submit();197
}198

199

200
}else if (nextPage==\"up\"){201

202

203
if (pageNO==1){204
alert(\"已经是第一页!\");205
return false;206
}else{207
pageNO=pageNO-1;208
url=url+pageNO;209

210
searchForm.action=url;211
searchForm.submit();212
}213

214
215

216
}else if (nextPage==\"next\"){217

218

219
if (pageNO==pageCounter){220
alert(\"已经是最后一页\");221
return false;222
}else{223

224
pageNO=parseInt(pageNO)+1+\"\";225
url=url+pageNO;226

227
228

229
searchForm.action=url;230
searchForm.submit();231

232

233
}234

235

236
}else if (nextPage==\"last\"){237

238
//alert(\"pageNO:\" +pageNO + \" pageCounter:\"+pageCounter);239

240
if (pageNO==pageCounter){241
alert(\"已经是最后一页\");242
return false;243
}else{244

245
pageNO=pageCounter246
url=url+pageNO;247

248

249
searchForm.action=url;250
searchForm.submit();251

252

253
}254

255
}else if (isNumeric(nextPage) ){256

257

258
if (pageNO==nextPage){259

260
alert(\"已经是第\" +pageNO +\"页!\");261
return false;262

263
}264

265
pageNO=nextPage;266

267
if (pageNO>=1 && pageNO<=pageCounter){268

269
url=url+pageNO;270

271

272
searchForm.action=url;273
searchForm.submit();274

275
}else{276

277
alert(\"页面超出了范围!\");278
return false;279

280

281
}282

283
284

285
}286
return false;287
}288

289

290
/*291
文件名: check_data.js292
功 能: 主要进行数据校验293
更 新: 金永俊 2004年4月16日294
戴 嘉 2004.05.11295
*/296

297
//-------------------------------298
// 函数名:isNull(i_field,i_value)299
// 功能介绍:检查输入是否为非空300
// 参数说明:数据项,输入的对应值301
// 返回值 :0-非空,1-为空302
//-------------------------------303
function isNull(i_field,i_value)304
{305
if (i_value==null || jstrim(i_value)==\"\")306
{307
return 1;308
}309
else310
{311
alert(\"\'\"+i_field+\"\' 要求为空!\");312
return 0;313
}314
}315

316
//-------------------------------317
// 函数名:notNull(i_field,i_value)318
// 功能介绍:检查输入是否为非空319
// 参数说明:数据项,输入的对应值320
// 返回值 :1-非空,0-为空321
//-------------------------------322
function notNull(i_field,i_value)323
{324

325
if (i_value==null || jstrim(i_value)==\"\")326
{327
alert(\"\'\"+i_field+\"\' 不可为空!\");328
return 0;329
}330

331
return 1;332

333

334
}335

336
//-------------------------------337
// 函数名:isNum(i_field,i_value)338
// 功能介绍:检查输入字符串是否为数字339
// 参数说明:数据项,输入的对应值340
// 返回值 :1-是数字,0-非数字341
//-------------------------------342
function isNum(i_field,i_value)343
{344
if (notNull(i_field,i_value)==0)345
{return 0;346
}347

348
re=new RegExp(\"[^0-9]\");349
var s;350
if(s=i_value.match(re))351
{352
alert(\"\'\"+i_field+\"\' 中含有非法字符 \'\"+s+\"\' !\");353
return 0;354
}355
return 1;356
}357

358
//-------------------------------359
// 函数名:isGreatNum(i_field,i_value,i_value1)360
// 功能介绍:检查输入字符串是否是数字并且大于i_value1361
// 参数说明:数据项,输入的对应值,比较数值362
// 返回值 :1-给定的i_value为数字且大于i_value1,363
// 0-非数字或者i_value小于等于i_value1364
//365
// 戴嘉 2004.05.11366
//-------------------------------367
function isGreatNum(i_field,i_value,i_value1)368
{369
//校验输入的是否为数值370
if(isNum(i_field,i_value)==0)371
return 0;372
else373
{374
if(i_value<=i_value1)375
return 0;376
}377

378
return 1;379
}380

381
//-------------------------------382
// 函数名:isSmallNum(i_field,i_value,i_value1)383
// 功能介绍:检查输入字符串是否是数字并且小于i_value1384
// 参数说明:数据项,输入的对应值,比较数值385
// 返回值 :1-给定的i_value为数字且小于i_value1,386
// 0-非数字或者i_value大于等于i_value1387
//388
// 戴嘉 2004.05.11389
//-------------------------------390
function isSmallNum(i_field,i_value,i_value1)391
{392
//校验输入的是否为数值393
if(isNum(i_field,i_value)==0)394
return 0;395
else396
{397
if(i_value>=i_value1)398
return 0;399
}400

401
return 1;402
}403

404

405
//-------------------------------406
// 函数名:isDate(i_field,thedate)407
// 功能介绍:校验字符串是否为日期格式408
// 参数说明:数据项,输入的字符串409
// 返回值 :0-不是,1--是410
//-------------------------------411

412
function isDate(i_field,thedate)413
{414
if (!(thedate.length==8 || thedate.length==10))415
{ alert(\"\'\"+i_field+\"\'日期格式不对,\\n要求为yyyymmdd或yyyy-mm-dd!\");416
return 0;417
}418
if (thedate.length==8)419
{420
thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);421
}422

423
var reg = /^(\\d{1,4})(-)(\\d{1,2})\\2(\\d{1,2})$/;424
var r = thedate.match(reg);425

426
if (r==null)427
{428
alert(\"请输入正确的\'\"+i_field+\"\' !\");429
return 0;430

431
}432
var d= new Date(r[1],r[3]-1,r[4]);433
var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate()434
var newDate=r[1]+r[2]+(r[3]-0)+r[2]+(r[4]-0)435
//alert(\"----------r:\"+r+\" d:\"+d+\" newStr:\"+newStr+\" newDate:\"+newDate);436
if (newStr==newDate)437
{438
return 1;439
}440
alert(\"\'\"+i_field+\"\'日期格式不对,\\n要求为yyyymmdd或yyyy-mm-dd!\");441
return 0;442
}443

444
//-------------------------------445
// 函数名:changeDate(thedate)446
// 功能介绍:日期yyyymmdd转换成yyyy-mm-dd格式447
// 参数说明:输入日期448
// 返回值 :0-不是,1--是449
//-------------------------------450

451
function changeDate(thedate)452
{453

454
if (thedate.length==8)455
{456
thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);457
}458

459
return thedate;460

461
}462

463
//-------------------------------464
// 函数名:isLength(i_field,i_length,i_value)465
// 功能介绍:检查输入值是否为指定长度466
// 参数说明:数据项,要求长度,值467
// 返回值 :1-是指定长度,0-不是468
//-------------------------------469
function isLength(i_field,i_length,i_value)470
{// alert(\"---长度要求:\"+i_length+\" \"+i_value.length);471
if (!(i_value.length==i_length))472
{473
alert(\"\'\"+i_field+\"\' 的长度要求为\' \"+i_length+\" \'!\");474
return 0;475
}476
return 1;477
}478

479
//-------------------------------480
// 函数名:dyLength(i_field,i_length,i_value)481
// 功能介绍:检查输入值是否达到指定长度以上482
// 参数说明:数据项,要求长度,值483
// 返回值 :1-符合,0-不是484
//-------------------------------485
function dyLength(i_field,i_length,i_value)486
{ //alert(\"---长度要求:\"+i_length+\" \"+i_value.length);487
if (i_value.length<i_length)488
{489
alert(\"\'\"+i_field+\"\' 的长度至少为 \'\"+i_length+\"\'!\");490
return 0;491
}492
return 1;493
}494

495
//-------------------------------496
// 函数名:xyLength(i_field,i_length,i_value)497
// 功能介绍:检查输入值不要超过指定长度498
// 参数说明:数据项,要求长度,值499
// 返回值 :1-符合,0-不是500
//-------------------------------501
function xyLength(i_field,i_length,i_value)502
{ //alert(\"---长度要求:\"+i_length+\" \"+i_value.length);503
if (i_value.length>i_length)504
{505
alert(\"\'\"+i_field+\"\' 的长度最长为 \'\"+i_length+\"\' !\");506
return 0;507
}508
return 1;509
}510

511
//-------------------------------512
// 函数名:check_hm(标签,长度,i_value)513
// 参数说明:标签,长度,值。514
// 功能介绍:检查输入号码字符串长度是否满足;是否全数字。515
// 返回值 :1-是,false-不是516
//-------------------------------517
function check_hm(i_field,i_length,i_value)518
{519

520
if (isLength(i_field,i_length,i_value)==0)521
{522
return 0;523
}524
if (isNum(i_field,i_value)==0)525
{526
return 0;527
}528
return 1;529
}530

531
//-------------------------------532
// 函数名:check_yzbm(i_value)533
// 参数说明:邮政编码值。534
// 功能介绍:检查邮政编码是否是6位长数字。535
// 返回值 :1-是,false-不是536
//-------------------------------537
function check_yzbm(i_value)538
{539

540
if (isLength(\"邮政编码\",\"6\",i_value)==0)541
{542
return 0;543
}544
if (isNum(\"邮政编码\",i_value)==0)545
{546
return 0;547
}548
return 1;549
}//-------------------------------550
// 函数名:check_zjhm(zjmc,obj)551
// 参数说明:证件名称,证件号码。552
// 功能介绍:检查身份证号码合法性。553
// 对身份证检查是否为全数字;出生日期格式是否正确;是否<=18,<=70;校验码检查554
// 返回值 :1-是,0-不555
//-------------------------------556
function check_zjhm(zjmc,zjhm)557
{558

559
var birthday=\"\";560
var zjhm1=\"\";561
var zjhm2=\"\";562

563
var s=\"\";564
if (notNull(\"证件号码\",zjhm)==0) { return 0; }565
if(zjmc==\"A\") //身份证号码566
{567
if(!(zjhm.length==15 || zjhm.length==18) )568
{569
alert(\"身份证长度不对,请检查!\") ;570
return 0;571
}572
zjhm1=zjhm;573
if (zjhm.length==18)574
{575
zjhm1=zjhm.substr(0,17) ;576
zjhm2=zjhm.substr(17,1);577
}578

579
re=new RegExp(\"[^0-9]\");580
if(s=zjhm1.match(re))581
{582
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");583
return 0;584
}585
//取出生日期586
if(zjhm.length==15 )587
{588
birthday=\"19\"+zjhm.substr(6,6);589
}590
else591
{592
re=new RegExp(\"[^0-9X]\");593
if(s=zjhm2.match(re)) //18位身份证对末位要求数字或字符594
{595
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");596
return 0;597
}598
birthday=zjhm.substr(6,8);599
}600
birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)601
//alert(\"birthday\"+birthday)602

603
if(isDate(\"证件号码\",birthday)==0) //检查日期的合法性604
{605
return 0;606
}607

608
var nl=cal_years(birthday);//求年龄609

610
//if (nl-0<18 || nl>70)611
if (nl-0<18)612
{613
alert(\"年龄要求 18岁以上 ,当前 \"+nl+\" !\");614
return 0;615
}616
if(zjhm.length==18 )617
{618
return(sfzCheck(zjhm)); //对18位长的身份证进行末位校验619
}620
}621
else622
{if (zjhm.length>17){623

624
alert(\"非‘居民身份证’长度不得超过17位,请检查!\") ;625
return 0;626
}627
}628

629
return 1;630
}631
function check_zjhmNoAge(zjmc,zjhm)632
{633

634
var birthday=\"\";635
var zjhm1=\"\";636
var zjhm2=\"\";637

638
var s=\"\";639
if (notNull(\"证件号码\",zjhm)==0) { return 0; }640
if(zjmc==\"A\") //身份证号码641
{642
if(!(zjhm.length==15 || zjhm.length==18) )643
{644
alert(\"身份证长度不对,请检查!\") ;645
return 0;646
}647
zjhm1=zjhm;648
if (zjhm.length==18)649
{650
zjhm1=zjhm.substr(0,17) ;651
zjhm2=zjhm.substr(17,1);652
}653

654
re=new RegExp(\"[^0-9]\");655
if(s=zjhm1.match(re))656
{657
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");658
return 0;659
}660
//取出生日期661
if(zjhm.length==15 )662
{663
birthday=\"19\"+zjhm.substr(6,6);664
}665
else666
{667
re=new RegExp(\"[^0-9X]\");668
if(s=zjhm2.match(re)) //18位身份证对末位要求数字或字符669
{670
alert(\"输入的值中含有非法字符\'\"+s+\"\'请检查!\");671
return 0;672
}673
birthday=zjhm.substr(6,8);674
}675
birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)676
//alert(\"birthday\"+birthday)677

678
if(isDate(\"证件号码\",birthday)==0) //检查日期的合法性679
{680
return 0;681
}682

683

684
if(zjhm.length==18 )685
{686
return(sfzCheck(zjhm)); //对18位长的身份证进行末位校验687
}688
}689
else690
{if (zjhm.length>17){691

692
alert(\"非‘居民身份证’长度不得超过17位,请检查!\") ;693
return 0;694
}695
}696

697
return 1;698
}699

700
function id15to18(zjhm)701
{702

703

704
var strJiaoYan =new Array(\"1\", \"0\", \"X\", \"9\", \"8\", \"7\", \"6\", \"5\", \"4\", \"3\", \"2\");705
var intQuan =new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);706
var ll_sum=0;707
var i;708
var ls_check;709
zjhm = zjhm.substring(0, 6) + \"19\" + zjhm.substring(6);710
for (i=0;i<=16;i++){711
ll_sum=ll_sum+(parseFloat(zjhm.substr(i,1)))*intQuan[i];712
}713
ll_sum = ll_sum % 11;714
zjhm=zjhm + strJiaoYan[ll_sum];715
return zjhm;716
}717
//-------------------------------718
// 函数名 :check_sg(i_value)719
// 参数说明:身高。720
// 功能介绍:检查身高是否为数字;是否>=100,<=250721
// 返回值 :1-是,0-不是722
//-------------------------------723

724
function check_sg(i_value)725
{726
if(isNum(\"身高\",i_value)==0) //检查身高是否为数字727
{728
return 0;729
}730
else731
{732
if ((i_value-0)<100 ||(i_value-0)>250)733
{734
alert(\"\'身高\'合理范围应在 100--250 !\");735
return 0;736
}737
}738
return 1;739
}740

741
//-------------------------------742
// 函数名 :check_sl(i_value)743
// 参数说明:视力。744
// 功能介绍:检查视力是否为数字;是否>=4.9,<=5.5745
// 返回值 :1-是,false-不是746
//-------------------------------747

748
function check_sl(i_value)749
{750
var reg = /^(\\d{1,1})(\\.)(\\d{1,1})$/;751

752
if (document.all[\"zsl\"].value.length==2)753
{754
document.all[\"zsl\"].value=document.all[\"zsl\"].value.substr(0,1)+\".\"+document.all[\"zsl\"].value.substr(1,1);755
}756
if (document.all[\"ysl\"].value.length==2)757
{758
document.all[\"ysl\"].value=document.all[\"ysl\"].value.substr(0,1)+\".\"+document.all[\"ysl\"].value.substr(1,1);759
}760
var r = document.all[\"zsl\"].value.match(reg);761
var r1 = document.all[\"ysl\"].value.match(reg);762
if(r==null)763
{764
alert(\"左视力的格式应为:x.x !\")765
return 0;766
}767
if(r1==null)768
{769
alert(\"右视力的格式应为:x.x !\")770
return 0;771
}772

773
if ((document.all[\"zsl\"].value-0)<4.9 || (document.all[\"zsl\"].value-0)>5.5)774
{775
alert(\"\'左视力\'应在 4.9--5.5 范围!\");776
return 0;777
}778
if ((document.all[\"ysl\"].value-0)<4.9 || (document.all[\"ysl\"].value-0)>5.5)779
{780
alert(\"\'右视力\'应在 4.9--5.5 范围!\");781
return 0;782
}783
return 1;784
}785

786
//-------------------------------787
// 函数名:isHg(bsl,tl,sz,qgjb)788
// 功能介绍:辨色力,听力,上肢,躯干颈部是否合格789
// 参数说明:辨色力,听力,上肢,躯干颈部790
// 返回值 :1-符合申请,0-不符合791
//-------------------------------792

793
function isHg(bsl,tl,sz,qgjb)794
{//alert(bsl+tl+sz+qgjb)795
if (!(bsl==1))796
{797
alert(\"\'辨色力\'不合格者不能申请!\");798
return 0;799
}800
if (!(tl==1))801
{802
alert(\"\'听力\'不合格者不能申请!\");803
return 0;804
}805
if (!(sz==1))806
{807
alert(\"\'上肢\'不合格者不能申请!\");808
return 0;809
}810
if (!(qgjb==1))811
{812
alert(\"\'躯干颈部\'不合格者不能申请!\");813
return 0;814
}815
if((document.all[\"yxz\"].value)==0)816
{817
alert(\"右下肢必须合格!\")818
document.all.yxz.focus();819
return 0;820
}821
return 1;822
}823

824
//-------------------------------825
// 函数名:sfzCheck(hm)826
// 功能介绍:对18位长的身份证进行末位校验827
// 参数说明:身份证号码828
// 返回值 :1-符合,0-不符合829
//-------------------------------830

831
function sfzCheck(hm)832
{833

834
var w=new Array();835
var ll_sum;836
var ll_i;837
var ls_check;838

839

840
if(hm.length==15) //长度15,直接返回true841
return true;842

843
if(hm.length!=15 && hm.length!=18){844

845
alert(\"身份证号码长度不正确\");846
return false;847

848
}849

850
w[0]=7;851
w[1]=9;852
w[2]=10;853
w[3]=5;854
w[4]=8;855
w[5]=4;856
w[6]=2;857
w[7]=1;858
w[8]=6;859
w[9]=3;860
w[10]=7;861
w[11]=9;862
w[12]=10;863
w[13]=5;864
w[14]=8;865
w[15]=4;866
w[16]=2;867
ll_sum=0;868

869
for (ll_i=0;ll_i<=16;ll_i++)870
{ //alert(\"ll_i:\"+ll_i+\" \"+hm.substr(ll_i,1)+\"w[ll_i]:\"+w[ll_i]+\" ll_sum:\"+ll_sum);871
ll_sum=ll_sum+(hm.substr(ll_i,1)-0)*w[ll_i];872

873
}874
ll_sum=ll_sum % 11;875

876

877
switch (ll_sum)878
{879
case 0 :880
ls_check=\"1\";881
break;882
case 1 :883
ls_check=\"0\";884
break;885
case 2 :886
ls_check=\"X\";887
break;888
case 3 :889
ls_check=\"9\";890
break;891
case 4 :892
ls_check=\"8\";893
break;894
case 5 :895
ls_check=\"7\";896
break;897
case 6 :898
ls_check=\"6\";899
break;900
case 7 :901
ls_check=\"5\";902
break;903
case 8 :904
ls_check=\"4\";905
break;906
case 9 :907
ls_check=\"3\";908
break;909
case 10 :910
ls_check=\"2\";911
break;912
}913

914
if (hm.substr(17,1) != ls_check)915
{916
alert(\"身份证校验错误!------ 末位应该:\"+ls_check+\" 实际:\"+hm.substr(hm.length-1,1));917
return 0;918
}919
return 1920
}921

922
function comm_check(){923
if (document.all[\"xm\"].value.length<2)924
{925
document.all[\"xm\"].focus();926
alert(\"\'姓名\'长度至少两汉字!\");927
return 0;928
}929
if (document.all[\"lxdh\"].value.length<6)930
{931
document.all[\"lxdh\"].focus();932
alert(\"\'联系电话\'长度至少6位!\");933
return 0;934
}935
return 1;936
}937

938
//-------------------------------939
// 函数名 :check_zjcx(s_value,s_cx_dm)940
// 参数说明:准驾车型字符串,合法的准驾车行字符串数组。941
// 功能介绍:检查车型输入是否正确,只检查是否包含合法的准驾车行字符串,重复、次序颠倒不认为是错误942
// 返回值 :1-包含合法的准驾车行,0-不合法943
//944
// 戴嘉 2004.05.12945
//-------------------------------946
function check_zjcx(s_value,s_cx_dm)947
{948
//合法的准驾车行字符串数组949
//var s_cx_dm=new Array(\"A1\",\"A2\",\"A3\",\"B1\",\"B2\",\"C1\",\"C2\",\"C3\",\"C4\",\"D\",\"E\",\"F\",\"M\",\"N\",\"P\");950
//字符串数组的长度951
var s_cx_input; //存放需要检验的字符串952
var i_pos; //查找子串定位953
var i;954

955
s_cx_input=s_value;956
for(i in s_cx_dm) //对合法准驾车行字符串数组轮循957
{958
do959
{960
i_pos=s_cx_input.indexOf(s_cx_dm[i]); //是否包含当前车型961
if(i_pos!=-1) //包含962
{963
//去掉找到的子串964
s_cx_input=s_cx_input.slice(0,i_pos)+s_cx_input.slice(i_pos+s_cx_dm[i].length);965
}966
}while(i_pos!=-1); //找不到当前车型子串,进入下一车型子串查找967
}968

969
if(s_cx_input.length==0) //输入字符串包含的都是合法的车型子串(全部被去掉了)970
return 1;971
else //输入字符串还包含有非法的字符串972
return 0;973
}974

975

976
//-------------------------------977
// 函数名:DateAddMonth(strDate,iMonths)978
// 功能介绍:获得日期加上iMonths月数后的日期979
// 参数说明:strDate 日期980
// 返回值 :无返回值981
//-------------------------------982
function DateAddMonth(strDate,iMonths){983
var thisYear = parseFloat(strDate.substring(0,4));984
var thisMonth = parseFloat(strDate.substring(5,7));985
var thisDate = parseFloat(strDate.substring(8,10));986
var d =thisYear *12 + thisMonth + iMonths;987

988
var newMonth = d % 12;989
if (newMonth==0) {990
newMonth=12;991
}992
var newYear = (d - newMonth) /12;993
var newDate = thisDate;994
var iMonthLastDate=getMonthLastDate(newYear,newMonth)995
if (newDate>iMonthLastDate) newDate=iMonthLastDate;996
var newDay=\"\";997

998
newDay += newYear;999
if (newMonth<10) {1000
newDay +=\"-\" + \"0\" + newMonth;1001
}else{1002
newDay +=\"-\" + newMonth;1003
}1004

1005
if (newDate<10) {1006
newDay +=\"-\" + \"0\" + newDate;1007
}else{1008
newDay +=\"-\" + newDate;1009
}1010
return(newDay); // 返回日期。1011
}1012

1013
function getMonthLastDate(iYear,iMonth){1014
var dateArray= new Array(31,28,31,30,31,30,31,31,30,31,30,31);1015
var days=dateArray[iMonth-1];1016
if ((((iYear % 4 == 0) && (iYear % 100 != 0)) || (iYear % 400 == 0)) && iMonth==2){1017
days=29;1018
}1019
return days;1020
}1021

1022
var keyvalue=\"\";1023
var srcStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";1024
var objName=\"\";1025
function findCode(event,obj)1026
{1027
if (objName != obj.name){1028
objName=obj.name;1029
keyvalue=\"\";1030
}1031
if (event.keyCode==13 || event.keyCode==9 ) {1032
keyvalue=\"\";1033
return true;1034
}1035

1036
//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)1037
// keyvalue=\"\";1038
keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();1039
//alert(keyvalue);1040
for(var i=0;i<obj.options.length;i++)1041
{1042
if(obj.options[i].value.indexOf(keyvalue)!=-1)1043
{1044
obj.value=obj.options[i].value;1045
if (obj.options[i].value==keyvalue){1046
objName=\"\"1047
}1048
return true;1049
}1050
}1051
}1052
function findName(event,obj) //根据代码取名称1053
{1054
if (objName != obj.name){1055
objName=obj.name;1056
keyvalue=\"\";1057
}1058
if (event.keyCode==13 || event.keyCode==9 ) {1059
keyvalue=\"\";1060
return true;1061
}1062

1063
//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)1064
// keyvalue=\"\";1065
keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();1066
//alert(keyvalue);1067
//alert(obj.options.length);1068
for(var i=0;i<obj.options.length;i++)1069
{1070
//alert(obj.options[i].text);1071

1072
if(obj.options[i].text.indexOf(keyvalue)!=-1)1073
{1074
obj.value=obj.options[i].value;1075
return true;1076
}1077
}1078
}1079
//自动清除输入框中的空格1080
function ignoreSpaces(string) {1081
var temp = \"\";1082
string = \'\' + string;1083
splitstring = string.split(\" \"); //双引号之间是个空格;1084
for(i = 0; i < splitstring.length; i++)1085
temp += splitstring[i];1086
return temp;1087
}1088

1089

1090
/*1091
文件名: function.js1092
功 能: 常用的功能库1093
功能块:1094

1095
更 新: 金永俊 2004年4月16日1096
戴嘉 2004.05.201097
*/1098

1099

1100
var todaystr;1101
todaystr=new Date();1102

1103

1104
//-------------------------------1105
// 函 数 名:cal_years(rq)1106
// 功能介绍:计算指定日期到今天是多少年.1107
// 参数说明:日期1108
// 返 回:年数1109
//-------------------------------1110

1111
function cal_years(rq)1112
{1113
var years;1114
//var dDate = new Date(); //系统日期(系统日期应该大于rq)1115
var dDate=todaystr;1116
var month1= dDate.getMonth()+1;1117
var year1= dDate.getFullYear();1118
var day1=dDate.getDate()1119
var year2= rq.substr(0,4);1120
var month2= rq.substr(5,2);1121
var day2=rq.substr(8,2);1122
//alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);1123
years = year1 - year2 - 0;1124
if (month2 > month1) //月份未到,years-11125
{1126
years = years - 1;1127
}1128
else1129
{1130
if ( (month1 == month2) && (day2 > day1)) //月份到了,但日未到,years-11131
{1132
years = years - 1;1133
}1134
}1135
//alert(\"-----------years-\"+years);1136
return years;1137
}1138

1139
//-------------------------------1140
// 函 数 名:cal_years1(rq1,rq2)1141
// 功能介绍:计算指定日期到今天是多少年.(rq1-rq2)1142
// 参数说明:日期1,日期21143
// 返 回:年数1144
//-------------------------------1145

1146
function cal_years1(rq1,rq2)1147
{1148
var years;1149
var year1= rq1.substr(0,4);1150
var month1= rq1.substr(5,2);1151
var day1=rq1.substr(8,2);1152
var year2= rq2.substr(0,4);1153
var month2= rq2.substr(5,2);1154
var day2=rq2.substr(8,2);1155
//alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);1156
years = year1 - year2 - 0;1157
if (month2 > month1) //月份未到,years-11158
{1159
years = years - 1;1160
}1161
else1162
{1163
if ( (month1 == month2) && (day2 > day1)) //月份到了,但日未到,years-11164
{1165
years = years - 1;1166
}1167
}1168
//alert(\"-----------years-\"+years);1169
return years;1170
}1171
//-------------------------------1172
// 函 数 名:cal_days(rq1,rq2)1173
// 功能介绍:计算两个日期间隔天数(要求rq2>=rq1).1174
// 参数说明:日期1,日期21175
// 返 回:天数1176
//-------------------------------1177

1178
function cal_days(rq1,rq2)1179
{ var d, s, t, d1 , d2, s1 , s2;1349
if(view_type==\"2\")


浙公网安备 33010602011771号