隨筆 - 15, 文章 - 0, 評論 - 5, 引用 - 0
          數據加載中……

          JS驗證方法

           <!--  
            說明:每個校驗函數默認都不校驗要求的輸入長度,只有當用戶有輸入的時候才開始校驗;  
                        這樣設計的目的是因為實際應用中有的表單是可以不要輸入的,如果某個表單域要求一定輸入,  
                那就可以象最后那個表單域一樣加入長度校驗。  
            -->  
            <HTML><HEAD><TITLE>FormCheck</TITLE>  
            <META   http-equiv=Content-Type   content="text/html;   charset=gb2312">  
            <STYLE>TD   {FONT-SIZE:   12px;   COLOR:   #333333}</STYLE>  
            <SCRIPT   language=JavaScript   type=text/JavaScript    
             >

           /*焦點放置在第一個表單域*/  
            function   focusInFirst(){  
              document.forms[0].elements[0].focus();}  
             
            /*判斷用戶輸入是否為空*/  
            function   isEmpty(ui)   {  
              return   (ui==null||ui=="");}  
             
            /*取得用戶輸入的字符串的長度*/  
            function   getLength(ui)   {  
              var   i,sum=0;  
              for(i=0;i<ui.length;i++)   {  
                if   ((ui.charCodeAt(i)>=0)   &&   (ui.charCodeAt(i)<=255))  
                  sum++;  
                    else  
              sum+=2;}  
              return   sum;}  
             
            /*是否為數字、字母或下劃線*/  
            function   isNLU(ui)   {  
                var   valid=/^\w*$/;  
                return   (valid.test(ui));}  
             
            /*判斷是否為身份證號碼*/  
            function   isIdno(ui){  
                var   valid=/(^\d{16}$)|(^\d{18}$)/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為郵政編碼*/  
            function   isPostCode(ui){  
                var   valid=/^\d{6}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為固定電話*/  
            function   isChinaTel(ui){  
                var   valid=/^0\d{2,3}\-\d{7,8}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為移動電話*/  
            function   isChinaMob(ui){  
                var   valid=/^0?13[0,1,3,5,6,8,9]\d{8}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為電話,只能為固定電話或移動電話*/  
            function   isTel(ui){  
                var   valid=/(^0\d{2,3}\-\d{7,8}$)|(^0?13[0,1,3,5,6,8,9]\d{8}$)/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為郵件*/  
            function   isMail(ui){  
              if(isEmpty(ui)){return   true;}  
                var   notValid=/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(^\-)|(\-\.)|(\.\-)/;  
                var   valid=/^.+\@[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}$/;  
              return   (!notValid.test(ui)&&valid.test(ui));}  
             
            /*用戶輸入字符串長度是否在兩值之間*/  
            function   isLenBetween(ui,minl,maxl)   {  
                return   (ui>=minl&&ui<=maxl);}

           


          </SCRIPT>  
             
            <SCRIPT   language=JavaScript>  
            <!--  
            function   formCheck(){  
            if(!isIdno(document.testForm.id.value)){  
              alert("身份證號碼輸入有誤!要求只能輸入數字,長度為16或18位。");  
              document.testForm.id.focus();  
              return   false;}  
            if(!isChinaTel(document.testForm.tel.value)){  
              alert("固定電話號碼輸入有誤!合法的格式為:區號-電話號碼。");  
              document.testForm.tel.focus();  
              return   false;}  
            if(!isChinaMob(document.testForm.mobi.value)){  
              alert("移動電話號碼輸入有誤!");  
              document.testForm.mobi.focus();  
              return   false;}  
            if(!isMail(document.testForm.mail.value)){  
              alert("郵箱輸入有誤!");  
              document.testForm.mail.focus();  
              return   false;}  
            if(!isPostCode(document.testForm.post.value)){  
              alert("郵政編碼輸入有誤!要求只能輸入數字,長度為6位。");  
              document.testForm.post.focus();  
              return   false;}  
            if(!isNLU(document.testForm.nlu.value)){  
              alert("該域只能輸入數字、字母或下劃線!");  
              document.testForm.nlu.focus();  
              return   false;}  
            var   len=getLength(document.testForm.leng.value);  
            if(len<4||len>6){  
              alert("該域要求輸入長度范圍是4至6個字符!");  
              document.testForm.leng.focus();  
              return   false;}  
            }  
            //-->  
            </SCRIPT>  
             
            <BODY   text=#000000   bgColor=#ffffff   onload=focusInFirst()>  
            <CENTER><B><FONT   face="Geneva,   Arial,   Helvetica,   san-serif"   color=#ff6600    
            size=4>The   sample   of   FormCheck</FONT></B>   <FONT    
            face="Arial,   Helvetica,   sans-serif"   size=2>(By   Roczhao)   </FONT>  
            <HR   width="60%"   color=#000000   noShade   SIZE=1>  
             
            <FORM   name=testForm   onsubmit="return   formCheck();"   method=post>  
            <TABLE   cellSpacing=0   cellPadding=0   width=500   border=1>  
                <TBODY>  
                <TR>  
                    <TD   width=182   height=25>身份證:</TD>  
                    <TD   width=312><INPUT   name=id>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>固定電話:</TD>  
                    <TD   width=312><INPUT   name=tel>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>手機號碼:</TD>  
                    <TD   width=312><INPUT   name=mobi>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>郵箱:</TD>  
                    <TD   width=312><INPUT   name=mail>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>郵編:</TD>  
                    <TD   width=312><INPUT   name=post>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>只能輸入數字、字母、下劃線:</TD>  
                    <TD   width=312><INPUT   name=nlu>   </TD></TR>  
                <TR>  
                    <TD   width=182   height=25>輸入長度在4-6之間:</TD>  
                    <TD   width=312><INPUT   name=leng>   </TD></TR>  
                <TR   align=center>  
                    <TD   colSpan=2   height=25><INPUT   type=submit   value="     點擊測試     "   name=Submit>    
                    </TD></TR></TBODY></TABLE></FORM></CENTER></BODY></HTML>  
             
             
             
            /*js函數文件   formcheck.js*/  
             
            /*------------------------------------------------------------------------------  
              *   File:   formcheck.js   
              *   Description:FormCheck組件的函數庫文件(部分),共計110個方法  
              *------------------------------------------------------------------------------*/  
            /*焦點放置在第一個表單域*/  
            function   focusInFirst(){  
              document.forms[0].elements[0].focus();}  
             
            /*判斷用戶輸入是否為空*/  
            function   isEmpty(ui)   {  
              return   (ui==null||ui=="");}  
             
            /*取得用戶輸入的字符串的長度*/  
            function   getLength(ui)   {  
              var   i,sum=0;  
              for(i=0;i<ui.length;i++)   {  
                if   ((ui.charCodeAt(i)>=0)   &&   (ui.charCodeAt(i)<=255))  
                  sum++;  
                    else  
              sum+=2;}  
              return   sum;}  
             
            /*是否為數字、字母或下劃線*/  
            function   isNLU(ui)   {  
                var   valid=/^\w*$/;  
                return   (valid.test(ui));}  
             
            /*判斷是否為身份證號碼*/  
            function   isIdno(ui){  
                var   valid=/(^\d{16}$)|(^\d{18}$)/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為郵政編碼*/  
            function   isPostCode(ui){  
                var   valid=/^\d{6}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為固定電話*/  
            function   isChinaTel(ui){  
                var   valid=/^0\d{2,3}\-\d{7,8}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為移動電話*/  
            function   isChinaMob(ui){  
                var   valid=/^0?13[0,1,3,5,6,8,9]\d{8}$/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為電話,只能為固定電話或移動電話*/  
            function   isTel(ui){  
                var   valid=/(^0\d{2,3}\-\d{7,8}$)|(^0?13[0,1,3,5,6,8,9]\d{8}$)/;  
                return   (isEmpty(ui)||valid.test(ui));}  
             
            /*判斷是否為郵件*/  
            function   isMail(ui){  
              if(isEmpty(ui)){return   true;}  
                var   notValid=/(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(^\-)|(\-\.)|(\.\-)/;  
                var   valid=/^.+\@[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}$/;  
              return   (!notValid.test(ui)&&valid.test(ui));}  
             
            /*用戶輸入字符串長度是否在兩值之間*/  
            function   isLenBetween(ui,minl,maxl)   {  
                return   (ui>=minl&&ui<=maxl);}

          posted on 2008-07-30 10:57 zhouzhou@ 閱讀(363) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 连州市| 巩留县| 犍为县| 砚山县| 新田县| 高碑店市| 湾仔区| 望奎县| 渝中区| 依安县| 白玉县| 乌鲁木齐市| 来宾市| 潮州市| 桂林市| 廉江市| 黑水县| 濮阳市| 石首市| 通河县| 长岭县| 贵南县| 儋州市| 景德镇市| 延寿县| 乐至县| 余江县| 乾安县| 青川县| 上栗县| 肃北| 沙洋县| 体育| 哈尔滨市| 定州市| 偃师市| 阿坝县| 澄江县| 丰宁| 同心县| 福州市|