1. ホーム
  2. jquery

[解決済み] 空のJQueryオブジェクトを取得する

2022-07-17 14:39:12

質問

次のコードでは、セレクトボックスの変更ハンドラを設定して、選択値の値に基づいていくつかのフォローアップの質問を表示したり隠したりしています。

さらに、選択のいくつかの値に対して、表示される追加メッセージがあります。

余分なメッセージを隠す必要があるかどうかを確認するために、私はPreviousという変数を保持しています。 ハンドラの実行時に、Previousがヌルであるか、サイズが0であるかどうかを確認します。

nullのための余分なチェックを行う必要がないように、空のJQueryオブジェクトにPreviousを初期化するのは良いことでしょう。

$() を実行すると、サイズが1のオブジェクトが返されます。

空のJqueryオブジェクトを作成する方法はありますか?

//Init関数です。
$(function(){
//口座種別選択で前回選択したオブジェクトを保持する。

var Previous = null; //ここで初期化したい。
                      //Previous = $() のようなもの。


$("SELECT[name='AccountType']").change(
    function () {
        //Previousメッセージがあった場合は非表示にする。
        if(Previous == null || Previous.size() > 0){ // 前のメッセージを隠す。
            Previous.hide()。
        }

        //メッセージがあれば表示し、previousとして保存する。
        Previous = $("#"+this.value+"_Msg").show();

        //最初の質問を取得する
        var FirstQuestion = $(".FirstQuestion");
        if(this.value === ''){ 最初の質問を表示する。
            FirstQuestion.hide()を実行します。
        }else{
            //FirstQuestionを手動で表示する。
            FirstQuestion.show()。
        }
    });
}

最悪の場合、このようにすることもできます。

    var Previous = { size : function () { return 0; }. };

というのがありますが、これはやりすぎのような気がします。

どのように解決するのですか?

空のjQuery-objectが作成されます。

$([])

更新しました。 新しいバージョンのjQuery(1.4以上)では

$()