2012-03-14 15 views
1

現在、私は自分のフォームがクライアント側検証するためのhttp://docs.jquery.com/Plugins/Validationを使用していて、それを成功した場合、現在、私は、あなたがバリで設定することができます 成功パラメータを使用していますいくつかのスタイリングを持つ 'checked'クラスを追加します。しかし、ユーザーが間違った方法で後で入力を変更したかどうかを確認する方法はありますか?そして、クラスを 'checked'から 'error'に再度変更することはできますか?jqueryの検証プラグインは、上のクラスを変更する「無効」

現在、私は持っている:一緒に全体の検証ルールを持つというように

$.validator.setDefaults({ 
    submitHandler: function(form) {form.submit();}, 
    success: function(label) { 
     // set   as text for IE 
     label.html(" ").addClass("checked"); 
    } 
}); 

希望があれば、どうぞ!大いに感謝する!。

答えて

0

これはトリックを行う必要があります。 yourInputFormの場合は、入力フィールドの記述子を入力し、 yourValidationRuleAsABooleanExpressionは、検証規則を表すブール式です。

$(yourInputForm).keyup(function() { 
if(yourValidationRuleAsABooleanExpression) { 
    $(this).addClass('checked').removeClass('error'); 
} else $(this).removeClass('checked').addClass('error'): 

});

このメソッドは、入力時にユーザーの入力規則を検証し、それに応じてクラスを追加および削除します。

希望しました。

+0

うーん、私はキイナベルをしよう!奇妙なことに、jqueryのバリデーションプラグイン – LucasRolff

+0

@Zerpexには関数がありませんが、それについてはわかりません。以前はプラグインをチェックしていませんでした。私は上記のコードを試しただけで、うまくいきました。私はあなたに答えを投稿しました。これがうまくいかないかどうか尋ねることをためらってください。 – keinabel

+0

プラグインに既に含まれている場合は検索を試みますが、私は簡単だと思います! – LucasRolff

0

あなたは(すなわち.removeClass('checked')を追加)

縮小さjsの '確認' クラス削除するshowLabel機能を更新する必要があります:

showLabel:function(a,b){var d=this.errorsFor(a);if(d.length){d.removeClass(this.settings.validClass).removeClass('checked') 

非縮小さJS:

showLabel: function(element, message) { 
     var label = this.errorsFor(element); 
     if (label.length) { 
      // refresh error/success class 
      label.removeClass(this.settings.validClass).removeClass('checked').addClass(this.settings.errorClass); 
関連する問題