1

jquery validate の使用を開始したばかりで、無効なフィールドに対して複数のエラーが発生しています。エラー コンテナーを移動しましたが、フィールドが修正された後もすべてのエラーが残っていることがわかります。たくさんのエラーが積み重なってしまいます。「現在の」エラーを確認したいと思います。

ここで私が何を意味するかを見ることができます: http://opiemedia.com/dev/lo/sv/varB/

これは、フォーム検証を使用しているものです

$(document).ready(function() {
 $("#evalFrm").validate({

   rules: {
     name: {
       required: true,
       minlength: 2,
     },
     company: {
       minlength: 2,
     },
     email: {
       required: true,
       email: true,
     },
     phone: {
       required:true,
       minlength: 7,
     }
   },
   errorLabelContainer: "#evalErr",
   errorClass: "error label label-warning"
  });
 });

これはHTMLです

<div class="span8 well" style="margin-left:0;">
      <form id="evalFrm action="#" method="post" class="evalFrm" name="evalFrm">
        <input name="oid" type="hidden" value="00D400000008j4N" />
        <input name="retURL" type="hidden" value="#" />
        <input class="span6" id="name" name="name" placeholder="Full Name" type="text" /> 
        <input class="span6" id="company" name="company" placeholder="Company" type="text" />
        <input class="span6" id="email" name="email" placeholder="Email" type="email" /> 
        <input class="span6" id="phone" name="phone" placeholder="Phone" type="tel" /> 
        <button class="btn btn-success span6 offset3" type="submit"onclick="_kmq.push(['record', 'Request Info Form Submission']);">Evaluate </button>
            </form>
            <div id="evalErr"></div>
          </div>

私を助けてくれてありがとう!

4

1 に答える 1

0

ライブラリでバグに遭遇したと思います。問題は、プロパティに 3 つのクラスがあることerrorClassです。2 つのクラスを渡すと正常に動作します。

バグはerrors()メソッドの次の行にあります

var errorClass = this.settings.errorClass.replace(" ", ".");

すべてのインスタンスを置き換える必要があるため、1 つだけ<space>をwhere に置き換えます。.

デモ: 2 つのクラスは正常に動作します
デモ: 3 つのクラスは動作しません

修正: validator.js ファイルのローカル コピーを使用している場合は、行を次のように変更して修正できます。

var errorClass = this.settings.errorClass.replace(/\s/g, ".");

注: その日の後半にパッチを提出しようとします

于 2013-07-24T03:46:29.860 に答える