2017-02-24 3 views
0

こちらも同じ問題があります。 https://github.com/guillaumepotier/Parsley.js/issues/855; 私は800のでParsleyJSフォームValidateがChromeブラウザで応答なしに発生しました

$('form').parsley().validate(); 

を使ってChromeブラウザでは遅い、と応答しなく遭遇してきた - 1000年入力。私はすでにバージョン2.62にアップグレードしました。私はこれらに遭遇している唯一の人ですか?これらが正常でない場合は、フォーム検証の代わりに検証をグループ化するだけです。

私の悪い説明は申し訳ありません。 :)

は、

+0

ちょっと、あなたは何をスピードアップするためにやったのですか? –

答えて

0

「オズの@Theウィズ」

をいただき、ありがとうございます私もこの問題を抱えているが、これは私がそれを解決しています方法です。最初に、私はparsley.jsドキュメントの例(Multi-Step Form)からマルチステップフォームの例に従っています。

私がしなければならなかった変更は、すべてのステップを含む1つのフォーム要素を持つのではなく、そのセクションの入力を含む複数(各ステップごとに1つ)作成しなければなりませんでした。

各セクションでは、このように見えた:

 <div class="form-section"> 
     <label for="email">Email:</label> 
     <input class="form-control" name="email" required="" type="email"> 
     </div> 

は次のようになります。

少なくとも私の目的のためにも
 <div class="form-section"> 
     <form> 
      <label for="email">Email:</label> 
      <input class="form-control" name="email" required="" type="email"> 
     </form> 
     </div> 

、parsley.js検証グループは無関係になり、私が調整されています次のボタンに添付されたクリックイベントを以下から受け取ります。

 $('.form-navigation .next').click(function() { 
     $('.demo-form').parsley().whenValidate({ 
      group: 'block-' + curIndex() 
     }).done(function() { 
      navigateTo(curIndex() + 1); 
     }); 
     }); 
ここから:

 $('.form-navigation .next').click(function() { 
     $sections 
      .eq(curIndex()) 
      .find('form') 
      .parsley() 
      .whenValidate() 
      .done(function() { 
      navigateTo(curIndex() + 1); 
      }); 
     }); 

P.S. $sectionsはすべてのdiv.form-section要素のjqueryオブジェクトの配列である例で宣言された変数です

これまでのすべての警告は、プログラムで収集するためにはより複雑なフォーム送信関数を記述する必要がありますすべてのフォームのデータをajax経由でREST-APIバックエンドに送信します。

とにかく私のアプローチですが、ブラウザのスレッドブロックの問題を大きく解決したようです。

関連する問題