程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2EE >> javascript驗證

javascript驗證

編輯:J2EE
復制代碼復制打印代碼打印
  1.     
  2. //全部功能函數,把他們存儲成一個JS的文件   
  3. function CheckForm(oForm)   
  4. {   
  5.     var els = oForm.elements;   
  6.     //遍歷所有表元素   
  7.     for(var i=0;i<ELS.LENGTH;I++) 是否需要驗證 if(els[i].check) { 取得驗證的正則字符串 sReg="els[i].check;" 取得表單的值,用通用取值函數 var sVal="GetValue(els[i]);" 字符串->正則表達式,不區分大小寫   
  8.             var reg = new RegExp(sReg,"i");   
  9.             if(!reg.test(sVal))   
  10.             {   
  11.                 //驗證不通過,彈出提示warning   
  12.                 alert(els[i].warning);   
  13.                 //該表單元素取得焦點,用通用返回函數   
  14.                 GoBack(els[i])     
  15.                 return false;   
  16.             }   
  17.         }   
  18.     }   
  19. }   
  20.     
  21.   
  22. function GetValue(el)   
  23. {   
  24.     //取得表單元素的類型   
  25.     var sType = el.type;   
  26.     switch(sType)   
  27.     {   
  28.         case "text":   
  29.         case "hidden":   
  30.         case "passWord":   
  31.         case "file":   
  32.         case "textarea": return el.value;   
  33.         case "checkbox":   
  34.         case "radio": return GetValueChoose(el);   
  35.         case "select-one":   
  36.         case "select-multiple": return GetValueSel(el);   
  37.     }   
  38.     //取得radio,checkbox的選中數,用"0"來表示選中的個數,我們寫正則的時候就可以通過0{1,}來表示選中個數   
  39.     function GetValueChoose(el)   
  40.     {   
  41.         var sValue = "";   
  42.         //取得第一個元素的name,搜索這個元素組   
  43.         var tmpels = document.getElementsByName(el.name);   
  44.         for(var i=0;i<TMPELS name="form1" { var .length;i++) if(tmpels[i].checked) 取得select的選中數,用?0?來表示選中的個數,我們寫正則的時候就可以通過0{1,}來表示選中個數 GetValueSel(el) for(var i="0;i<el.options.length;i++)" 單選下拉框提示選項設置為value="" if(el.options[i].selected && el.options[i].value!="" ) sValue +="0" ; return sValue; function GoBack(el) 取得表單元素的類型 sType="el.type;" switch(sType) ?text?: ?hidden?: ?passWord?: ?file?: ?textarea?: el.focus();var rng="el.createTextRange();" rng.collapse(false); rng.select(); ?checkbox?: ?radio?: els="document.getElementsByName(el.name);els[0].focus();" ?select-one?: case ?select-multiple?:el.focus(); } 測試的Html代碼 <form onsubmit="return CheckForm(this)">   
  45. test:<INPUT name=test>不驗證<BR>   
  46. 賬號:<INPUT name=id check="^\S{1,}$" warning="賬號不能為空,且不能含有空格">不能為空<BR>   
  47. </FROM>   
  48.   
  49. //正則含義解釋   
  50. check="^\s+$" 從開頭到結束,匹配任意空字符,或tab或換行   
  51. check="^\S\w{6,}$"比配六位以上,任何字符和數字都可   
  52. check="^\d+$"比配數字用的。只能是數字   
  53. check="(.*)(\.jpeg|\.bmp)$"  
  54. check="^\d{4}\-\d{2,2}\-\d{2,2}$"  
  55. check="^[\s|\S]{20,}$"  
  56.   
  57.   
  58.   
  59.   
  60.   
  61.   
  62.   
  63.   
  64.   
  65.   
  66.   
  67.   
  68.   
  69.   
  70.   
  71.   
  72. //非空驗證   
  73. function requiredFIEld(myId,errorMessage)   
  74. {   
  75.     if(document.getElementById(myId).value == "")   
  76.     {   
  77.         window.alert(errorMessage);   
  78.         document.getElementById(myId).focus();   
  79.         return false;   
  80.     }   
  81.     return true;   
  82. }   
  83. //dropDownList myName值不能為myValue   
  84. function dropCant(myId,myValue,errorMessage)   
  85. {   
  86.     if(document.getElementById(myId).value == myValue)   
  87.     {   
  88.         window.alert(errorMessage);   
  89.         document.getElementById(myId).focus();   
  90.         return false;   
  91.     }   
  92.     return true;   
  93. }   
  94. //Email格式驗證   
  95. function validEmail(myId,errorMessage)   
  96. {   
  97.     var email = /^[_a-zA-Z0-9+.]+@([_a-zA-Z0-9]+.)+[a-zA-Z0-9]{2,3}$/;   
  98.     if(email.test(document.getElementById(myId).value))   
  99.     {   
  100.         return true;   
  101.     }   
  102.     else  
  103.     {   
  104.         window.alert(errorMessage);   
  105.         document.getElementById(myId).focus();   
  106.         return false;   
  107.     }   
  108. }   
  109. //兩值是否相同(常用於密碼比較)   
  110. function compareValid(myId1,myId2,errorMessage)   
  111. {   
  112.     if(document.getElementById(myId1).value == document.getElementById(myId2).value)   
  113.     {   
  114.         return true;   
  115.     }   
  116.     else  
  117.     {   
  118.         window.alert(errorMessage);   
  119.         document.getElementById(myId1).focus();   
  120.         return false;   
  121.     }   
  122. }   
  123. //字段長度驗證(x位至y位)   
  124. function validLength(myId,x,y,errorMessage)   
  125. {   
  126.     if(document.getElementById(myId).value.length < x || document.getElementById(myId).value.length > y)   
  127.     {   
  128.         window.alert(errorMessage);   
  129.         document.getElementById(myId).focus();   
  130.         return false;   
  131.     }   
  132.     return true;   
  133. }  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved