highlightおよびコールバック関数を使用して、unhighlight任意の要素に任意のクラスを適用できます。以下はデフォルトの機能です。これらを 内のオプションとして含めることにより、.validate()これらのデフォルトを任意のコードでオーバーライドできます。
highlight: function( element, errorClass, validClass ) {
if ( element.type === "radio" ) {
this.findByName(element.name).addClass(errorClass).removeClass(validClass);
} else {
$(element).addClass(errorClass).removeClass(validClass);
}
},
unhighlight: function( element, errorClass, validClass ) {
if ( element.type === "radio" ) {
this.findByName(element.name).removeClass(errorClass).addClass(validClass);
} else {
$(element).removeClass(errorClass).addClass(validClass);
}
}
編集:
OPの修正された質問については、
「どういうわけか$(element).siblings('label.error').addClass('alert');最初に警告クラスを追加しませんでした...」
これは、選択しようとしlabel.errorていて、まだ存在していないためです。それを選択して適用するlabel.error には、 が必要.alertです ... これら 2 つのことは同時に発生することはありません。
errorClass回避策として、プラグインのデフォルトを に変更してから.alert、 および を使用highlightして、要素に適用する必要がある他のunhighlightクラスを適用することが含まれる場合があります。select
参照: http://jsfiddle.net/SPK3D/1/