0

私は検証プラグインを使用しています。そしてそれはうまくいっています。has-success & has-errorここで、成功とエラーでaddClass を実行したいと思います。しかし、それはクラスを追加しています。検証が成功すると正常に印刷されます。最初のフィールドのみを検証しています。あなたの名前フィールドを入力し、メールアドレスを空白のままにしておくと、フォームも送信されます...

 <form action="" method="" id="contact">
        <div class="form-group"">
            <label> Your Name </label>
            <input type="text" class="form-control" placeholder="Enter Your Name" id="firstname" required="" minlength="5"/>
        </div>

        <div class="form-group">
            <label> Your E-mail </label>
            <input type="email" class="form-control" placeholder="Enter Your Email" id="email"/>
        </div>
  <button type="submit" class="btn btn-primary btn-lg"> Send</button>
 </form>

 <script type="text/javascript"> 
   $('#contact').validate({
   success: function(label){
   label.addClass("has-success").text("ok");
 }
 });

4

1 に答える 1

2

「Validation Plugin を使用していますが、正常に動作しています。ここでは、成功とエラーでクラスhas-success&を追加したいと考えています。」has-error

デフォルトでは、プラグインはエラーが発生したときに呼び出されるクラスを追加し、エラーがクリアされたときに.errorクラスを変更します。.valid

.errorデフォルトのとクラスを単純に使用するか、プラグインのとオプションを.valid使用してそれらを置き換えることができます。errorClassvalidClass

$('#contact').validate({
    errorClass: 'has-error',
    validClass: 'has-success'
});

複数のクラスを追加することもできますが、これが必要な理由はわかりません。

$('#contact').validate({
    errorClass: 'error has-error',
    validClass: 'valid has-success'
});

ドキュメントを参照してください: http://jqueryvalidation.org/validate/


「最初のフィールドのみを検証しています。[sic] あなたの名前フィールドをフィールドし、メールアドレスを空白のままにすると、フォームも送信されます」

2 番目のフィールドには、入力を「要求」するルールがないためです。requiredこのフィールドにも属性を追加する必要があります。

また、最初のフィールドでrequired=""は、一般的に受け入れられている構文ではありません。

この形式が最適です、IMO: required="required"

于 2013-10-23T16:46:22.443 に答える