0

検証の際にselect要素を囲むdivをdivに追加する必要があります。jQuery ValidateのinvalidHandlerイベントの使用

$("#Form").validate({ 
    invalidHandler: function (form, validator) { 
     $("[id$='_DropDownList']").each(function() { 
      // How do I figure out if $(this) is valid or invalid? 
      // Add the class below if invalid. 
      $(this).parent().addClass("error"); 
     }); 
    } 
}); 

答えて

6

あなたはこのように、.valid()方法を使用することができます。しかし、highlight and unhightlight optionsはこのために特別です

$("#Form").validate({ 
    invalidHandler: function (form, validator) { 
     $("[id$='_DropDownList']").each(function() { 
      if(!$(this).valid()) 
       $(this).parent().addClass("error"); 
     }); 
    } 
}); 

$("#Form").validate({ 
    highlight: function(element, errorClass, validClass) { 
    $(element).parent().removeClass(validClass).addClass(errorClass); 
    }, 
    unhighlight: function(element, errorClass, validClass) { 
    $(element).parent().removeClass(errorClass).addClass(validClass); 
    } 
}); 
0

このコードが正しいように見えます:

$(this).parent().addClass("error"); 

たぶん、あなたの問題は、それを囲むコードである...関数の外であなたのaddClassラインを移動してみてください、それが動作するかどうかを確認することですそこ。

関連する問題