0

jQueryバリデーターとユニフォームプラグインを使用して、選択した要素を改良しています。問題は、selectが無効に返された場合、要素が非表示になっているため、ユーザーがわからないことです。そのため、selectにエラーがある場合に、親要素にエラークラスを追加するカスタムメソッドを作成しようとしています。

これは私がこれまでに持っているものです:

$.validator.addMethod(
    "selectvalidate", function(){
        if(!$(element).is(':visible')){
            return true;
        }
        else if($(element).val() == "") {
            $(element).parent('.selector').addClass('error');
            return false;
        }
        else{
            $(element).parent('.selector').removeClass('error');
            return true;
        }
    },
    "Please select an option"
);

HTML

<fieldset>
   <label>Field Label</label>
     <div class="selector"></div>
     <span>- Select -</span>
     <select>
         <option></option>
     </select>
</fieldset>

どんな助けでも素晴らしいでしょう

4

1 に答える 1

1

カスタム メソッドは必ずしも必要ではありません。errorPlacement:オプションを使用するだけです。

これは、すでに組み込まれているデフォルトの関数です...

errorPlacement: function(error, element) {
    error.insertAfter(element);
}

実際のデモ: http://jsfiddle.net/4ySLB/

デフォルトの関数を編集してエラーを任意の場所に配置し、必要に応じて DOM 内の他のものを操作できます。

よりカスタマイズされた回答を得るには、追加のコードと jsFiddle デモを提供する必要があります。

于 2013-01-11T19:29:15.620 に答える