フォームのテキストボックスの検証

フォームのバリデーション

関数(){
        場合(window.addEventListener)window.addEventListener( "負荷"、INIT、)、
        そう であれば(window.attachEvent)window.attachEvent( "オンロード" 、INIT); 
        
      関数のinit(){
        VAR私は= 0; I <document.forms.length; I ++ 
       { 
           VAR F = document.forms [I]; // 第I个フォーム
           のvar needValidation =  ; //は、このフォームは、任意の必要がないことは、今のところ、想定します検証
            
           のためにVARの J <f.elements.length; J ++ J = 0
           {
               E = f.elements [J]。
                
               もし(!e.type = "テキスト")続けますVaRのパターン= e.getAttribute( "パターン" )。
               varが必要= e.getAttribute( "必要")!= nullを// 参照してください、それは検証が必要な属性がある場合場合(&&必要!{パターン)
               パターン =「\\ sの」; 
               e.setAttribute( "パターン" 、パターン)。
               } であれば(e.pattern){ 
               e.onchange = validateOnChange。
               
               
 
               
                
               needsValidation = ; 
               } 
          } 
       もし(needValidation)f.onsubmit = validateOnSubmit。
        } 
        } 
      関数validateOnChange()
        {    VARのテキストフィールド= この;
            VaRのパターン= textfield.getAttribute( "パターン" )。
            VaRの値=テキストフィールド/ * この* / .VALUE。
             
            もし(value.search(パターン)== - 1)textfield.classname = "無効"  textfield.classname =「有効」 
        }
      関数validateOnSubmit()
        { 
            VARの無効= varが I = 0; I <  .elements.length; I ++ 
               { 
                  VARの Eは= この.elements [I]を、
                  もし(e.type == "テキスト" && e.onchange == validateOnChange){ 
                    e.onchange()。
                    もし無効=(e.classname ==「無効」)
                   } 
                } 
            もし(無効){ 
             (アラート「フォームが不完全または不正確に記入されて\ nを『+』強調表示フィールドを修正して、もう一度やり直してください」);
             リターン はfalse ; 
            } 
        } 
})();

コール:

< ヘッド> 
< メタHTTP-当量= "Content-Typeの" コンテンツ= "text / htmlの;のcharset = UTF-8"  /> 
< タイトル>無題ドキュメント</ タイトル> 
< スタイル> 
    input.invalid { 背景色# FA0 ; } 
</ スタイル> 
</ ヘッド> 
 
< ボディ> 
< フォームアクション= "Test.aspを" > 
名:< 入力タイプ=」= "名前" に必要な   /> < BR /> 
メール:< 入力タイプ= "テキスト" 名前= "メール" パターン= "^ \ sの* \ワット+ @ \ + \ W \ + \ sの* $ワット"  /> < BR /> 
郵便番号:< 入力タイプ= "テキスト" 名前= "ZIP" パターン= "^ \ S * \ D {5} \ sは$ *"  /> < BR > 
未検証:< 入力タイプ= "テキスト" のonchange =」警告( "テスト")」/> < BR /> 
<入力タイプ= "提出"  /> 
</フォーム>


025_結果

おすすめ

転載: www.cnblogs.com/springsnow/p/12307391.html