0

すべてのテキスト フィールドと選択フィールドにいくつかの検証を適用したいフォームがあります。ぼかしイベントがいつ呼び出され、どのフィールドで発生したかを知りたいです。以下のコードを使用しています。

$(document).ready(function() {

            $("select").blur(function() {
                // alert("ID "+,$(this).attr('id'));
                var selected = $("#tabs").tabs('option', 'active');

                var selectedTabTitle = $($("#tabs li")[selected]).text();

                skip_test(selectedTabTitle);
            });

            $("input").blur(function() {
                var selected = $("#tabs").tabs('option', 'active');

                var selectedTabTitle = $($("#tabs li")[selected]).text();
                skip_test(selectedTabTitle);
            });
        });
4

1 に答える 1

3

$(this)イベントを発生させた要素を常に指す必要があります

例えば$(this).addClass("failedValidation")

また、すべての選択と入力にクラスを追加できる場合は、コードを繰り返す必要はありません。できない場合は、関数を別の場所で定義して、blur()

例えば

var doMyBlurStuff = function () {
     $(this).addClass("failedValidation")
};

$("select, input").blur(doMyBlurStuff);
于 2013-08-29T07:17:59.920 に答える