2009-10-16 20 views
46

jQuery Validateを使用していますが、実際には何のエラーメッセージも表示したくありません。むしろ、私は不快な入力/選択/などの周りに赤いボックスを持つ必要があります。これらの赤いボックスは追加するケーキでしたが、エラーメッセージ自体は削除できません。どうすればそれらを無効にできますか?jQuery Validate - 表示検証エラーメッセージを表示しない/カスタムエラーを表示する

答えて

127

何かにエラーメッセージを追加しないカスタムエラー配置機能(プラグインのoptionsを参照)を使用してください。

$('#form').validate({ 
    errorPlacement: function(error,element) { 
    return true; 
    } 
}); 

また、エラーメッセージをページの他の場所、たとえばページ上部のDIVに置くこともできます。

jQuery('form').validate({ 
    showErrors: function(errorMap, errorList) { 
     // Do nothing here 
    }, 
    onfocusout: false, 
    onkeyup: false, 
    rules: { 
     email: { 
      required: true 
     } 
    }, 
    messages: { 
     email: { 
      required: 'The email is required' 
     } 
    } 
}); 
+0

ありがとう、同じ問題を抱えている間にこの答えを見つけました:) – Agos

+1

@tvanfosson、このようにCSSを使用しても問題ありません: 'label.error {display:none!important;}' – Mori

+2

@RainLoverスタイルは要素に直接設定されます。私は、プラグインがどのように表示を正常に行うかを見なければならないだろう。それが完全にクラスベースの場合、それは動作しますが、それは表示/非表示を使用する場合はしません。また、サイト全体のスタイルシートが1つであると仮定すると、グローバルなソリューションにもなります。 – tvanfosson

9

あなたがshowErrors関数をオーバーライドすることができます。ただ、すなわち)(検証を初期化するために、あなたの呼び出しの前に$.validator.messages.required = '';を置く:

$.validator.messages.required = ''; 
$('#formData').validate({});` 

これは、それが入力上のスタイルを表示しますが、ないメッセージのラベルう!

+0

要素を強調表示しないようにしますか? – tvanfosson

+3

@tvanfosson:はい、実際にはそうです。 –

+0

onfocusoutとonkeyupに感謝します! – user3560988

6

これは私がそれを行う方法です。

+0

完璧なソリューション –

関連する問題