1

jQuery Validation を使用していますが、フォームの無効な各フィールドで関数を実行できるようにしたいと考えています。これが私が考えていることです:

jQuery(".jform").validate(
{
    errorElement: "span",
    errorClass: "help-inline",
    invalidHandler: function(event, validator)
    {
        jQuery(':input', this).each(function()
        {
            var ParentDiv = jQuery(Selector).parents(".control-group");
    ParentDiv.removeClass('error');

            if (!validator.valid(this))
            {
                ParentDiv.addClass('error');   
            }
        });
    }
});

基本的に、エラーのあるフィールドを含む div にクラスを追加しようとしています。上記のコードが機能していません - 何か根本的なことが欠けていると思います。助言がありますか?

4

1 に答える 1

1

invalidHandlerの代わりにハイライトコールバックを使用します。これは無効なフィールドごとに呼び出されます。おそらく、これをハイライト解除ハンドラーと組み合わせる必要があります。

$(".jform").validate(
{
    errorElement: "span",
    errorClass: "help-inline",
    highlight: function(element, errorClass)
    {
       $(element).closest('div').addClass(errorClass);
    },
    unhighlight: function(element, errorClass)
    {
       $(element).closest('div').removeClass(errorClass);
    }
});
于 2013-05-30T14:54:52.040 に答える