2011-06-28 10 views
0

.validation-failedを私のCSSファイルに入れました。Mootools - 検証に失敗した場合、入力ボックスのスタイルを変更するには?

.validation-failed { 
border: 1px solid #C00; 
background-color: #FFFFC6; 
} 

このコードは、テキストボックスや入力ボックスなどの背景色を変更しますが、境界線のスタイルは変更されません。私は国境がすべての入力項目でユニークではないと思うので、それは彼らがそれをした理由です。私の質問は、入力ボックスに関連付けられたラベル にアンダーラインを置くだけでなく、 を入力ボックスの境界線の色を変更する方法

のですか?

onShowAdvice: function(element,advice,validator){....} 

にコードを入力しましたが、何も起こりません。

+0

イベントが発生したかどうかを確認しましたか?そして、あなたはどんなスクリプトを使っていますか? – Colum

+0

私はmootoolsを使用しています – kaushik

+0

しかし、検証のために、組み込みバリデーターを使用していますか? – Colum

答えて

1

私は答えを見つけました。変数宣言セクションでは、次の操作を行う必要があります:

// Declare validator 
      var formValidator = new Form.Validator.Inline(regForm, { 
        errorPrefix: '', 
        serial: false, 
        onShowAdvice: function(element, advice) { 
         element.addClass('error');      
         element.getPrevious('label').addClass('error'); 

        }, 
        onHideAdvice: function(element, advice){ 
         element.removeClass('error'); 
         element.getPrevious('label').removeClass('error');       
        } 
       }); 

onShowAdvice」あなたは「要素」という名前の変数に検証されます要素を取得します。私の場合;その前のフィールドは要素に関連付けられたラベルです。私はそのラベルのクラスを "error"に変更しています。また、その要素のクラスを "error"に変更しています。

onHideAdvice」これらの「エラー」クラスを削除する必要があります。

関連する問題