2017-07-15 12 views
0

に追加されていない再び、はクラス私jQueryの入力チェック

イム:

<script type="text/javascript"> 
$(document).ready(function() { 
    $('.check').submit(function() { 

    var abort = false; 

     $('.required').each(function() { 
      if ($(this).val()==='') { 
       $(this).addClass(' error'); 
       abort = true; 
      } 
     }) 
     return abort; 
     }) 
}); 
</script> 

例HTML大きなフォーム検証の一部、しかし、エラーになります

<form class="check" style="font-family: Arial;" action="contact.php" method="post"> 
<input class="wipe required" style="font-family: Arial;" type="text" name="name" value="Full Name" /> 
<more input fields as above> 
<more input fields as above> 
<more input fields as above> 
<more input fields as above> 
<input class="right" style="font-family: Arial;" type="submit" value="SEND" /></form> 

クラスが追加されていません(必要なクラスをフィールドに入力しなくても)。私がevent.preventDefault()を追加した場合、フォームは送信を試みます。フォームは送信されませんが、エラークラスは追加されません。

jQueryのは、クラスを追加すると、正常に動作しますが、あなたのreturn論理が逆方向にあるタグ

+0

を呼び出す必要が提出しないようにしたい場合。 –

+0

[mcve] – charlietfl

+0

の例を追加してください。標準形式です。 – user4349555

答えて

1

の前に追加されます。

あなたがfalseを返す...またはあなたも、どこでこのスクリプトを入れているあなたのHTMLを表示する必要がevent.preventDefault()

$('.check').submit(function() { 
 

 
    var proceed = true; 
 

 
    $('.required').each(function() { 
 
     if ($(this).val() === '') { 
 
     $(this).addClass(' error'); 
 
     proceed = false; 
 
     } 
 
    }); 
 
    return proceed; 
 
    });
.error { 
 
    background: red 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<form class="check" style="font-family: Arial;" action="contact.php" method="post"> 
 
    <input class="wipe required" style="font-family: Arial;" type="text" name="name" value="Full Name" /> 
 
    <input class="wipe required" style="font-family: Arial;" type="text" name="age" value="" /> 
 
    <input class="right" style="font-family: Arial;" type="submit" value="SEND" /> 
 
</form>

+0

私の頭の中にあると思っていたので、リターンロジックは、それの背後にある論理に反して、はい/いいえの提出を中止する必要があります。しかし、何らかの理由でエラークラスを追加することができません。 – user4349555

+0

それを再現するデモを提供してください。あなたはクラスがうまく追加されていないと確信していますが、使用するCSSルールは、それが追加されたときに視覚的な変化を見るのに十分ではありませんか? – charlietfl

+0

肯定的です。私はウェブ検査官に確認しています。 – user4349555

関連する問題