0

私はいくつかのフォームを検証するためにパセリを使用しており、サーバーは彼の側で同じ検証を行っています。サーバーで制約が失敗した場合、この関数を呼び出してパセリにエラーを追加します。

var invalidField = $('[name="' + param.target + '"]').parsley();
window.ParsleyUI.addError(invalidField, "remoteError_"+param.target, param.message);

Param.target は、無効にする入力フィールドの名前です。フィールドの下に li として表示されるエラーですが、親フォームのメッセージは無効になっています

<form id="ricarica_telefonica_form"
data-parsley-errors-messages-disabled>
<script>
   $(function(){
      $('#ricarica_telefonica_form').parsley();
   });
</script>

さらに、カスタム メッセージ ビジュアライゼーションを使用して、ブートストラップ ツールチップでエラーを表示しています

window.Parsley.on('field:error', function() { some code });

しかし、私のコードは実行されていません (フィールドがパセリによって無効化されている場合に機能します)。私は何を間違っていますか?メソッド .addError はパセリによって正しく管理されていますか?

4

1 に答える 1

0

私は解決策を見つけました、正しい方法は

var instance = $('#field').parsley();
instance.trigger('field-error',instance,{message:errorMessage});

このようにして、メッセージ属性を使用するツールチップを管理する関数によってイベントがキャッチされます。フォームはまだパセリに有効ですが、少なくとも私は私の範囲に達しました.

于 2016-03-22T14:56:50.587 に答える