2012-03-18 13 views
0

フィールドを確認する次の機能があります。すべてのこれらのフィールドが空でない場合、私はあなたには、いくつかのjqueryの検証プラグインを使用することができすべてのフィールドが入力されている場合にのみフォームを送信するには

function validateAdminInput() { 

    $('.mand').each(function() { 
     if ($(this).val() == '') { 
      $(this).css('border','solid red 1px'); 
     }else{ 
      $(this).css('border',''); 
     } 
    }); 

    $('#addproducts_form').submit(); 

} 

答えて

1
function validateAdminInput() { 
    var isValid=true; 
    $('.mand').each(function() { 
     if ($(this).val() == '') { 
      $(this).css('border','solid red 1px'); 
      isValid=false; 
     }else{ 
      $(this).css('border',''); 
     } 
    }); 
    if(isValid) 
    { 
     $('#addproducts_form').submit(); 
    } 

} 
1

のみ提出したいと思います。それは多くの方法を検証することができます。フォームタグで

3
function validateAdminInput() { 
    var errors = 0; 
    $('.mand').each(function() { 
     if ($(this).val() == '') { 
      $(this).css('border','solid red 1px'); 
      errors++; 
     }else{ 
      $(this).css('border',''); 
     } 
    }); 
    if(errors === 0) { 
     $('addproducts_form').trigger('submit'); 
    } 

} 
+0

確かに巧妙な解決策!私はフラグ( 'var errors')を使うことは考えていませんでした。 – Terry

1

here is link for one

onsubmit="return checkmyform(this);" 

を書き、タグの後にこれを追加します。このヘルプあなたのような

function checkmyform(form){ 
    var $myform = $(form); 
    $(".mand",myform).each(function(){ 
     if($(this).name()=="input"){ 
      if($.trim($(this).val())=="") return false; 
     }else{ 
      if($.trim($(this).text())=="") return false; 
     } 
    }); 
    return true; 
} 
1
function validateAdminInput() { 
    var error = false; 
    $('.mand').each(function() { 
     if ($(this).val() == '') { 
      error = true; 
      $(this).css('border','solid red 1px'); 
     }else{ 
      $(this).css('border',''); 
     } 
    }); 
    if(!error) $('#addproducts_form').submit(); 

} 
1

ウィル何かを?

function validateAdminInput() { 
     var check = false; 
     $('.mand').each(function() { 
      if ($(this).val() == '') { 
       check = true; 
       $(this).css('border','solid red 1px'); 
      }else{ 
       $(this).css('border',''); 
      } 
     }); 

     if(!check) 
     { 
     // your code 
     } 

    } 
1

私はあなたの機能を理解していれば、これはそれを行う必要があります。

function validateAdminInput() { 

    var allValid = true; 

    $('.mand').each(function() { 
     if ($(this).val() == '') { 
      $(this).css('border','solid red 1px'); 
      allValid = false; 
     }else{ 
      $(this).css('border',''); 
     } 
    }); 

    if (allValid) 
     $('#addproducts_form').submit(); 

} 
0

をあなたはすべてのフィールドにrequired属性を追加しますが、HTML5フォームをサポートするブラウザでのみ動作可能性があります。他人のために

、それは簡単です:

<form action="..." method="..." onSubmit="return validate(this);"> 
    <!-- input fields here --> 
</form> 

はまた、任意の必須フィールドにrequired属性を追加してください。次に...

このソリューションは未処理のJSであり、したがって、あらゆるjQueryソリューションより何倍も高速になることが保証されています。

関連する問題