jQuery で複数のセレクターを連鎖させるには?質問する

jQuery で複数のセレクターを連鎖させるには?質問する

通常、クラスをセレクターとして使用する場合は、ページ全体ではなく、クラスが存在する領域のみを検索するように、「id」セレクターを使用するようにします。

ただし、コードが含まれた部分ビューがあります。この部分ビュー (共通コード) は、フォーム タグにラップされます。

私は持っている:

<form id="Create">
// load common code in from partial view
</form>

<form id="Edit">
// load common code in from partial view
</form>

この共通コードでは、複数のフィールドにプラグインを添付する必要があるので、次のようにします。

$('#Create .myClass').plugin({ options here});

$('#Edit .myClass').plugin({options here});

つまり、ほぼ同じコードです。どちらかの ID を検索する方法はあるのでしょうか?

編集

セレクターに変数がある場合に問題が発生します

    my.selectors = 
    {
        A: '#Create',
        B: '#Edit',
        Plugin: ' .Plugin' 
    };

 $(selector.A+ selectors.Plugin, selector.B+ selectors.Plugin)

実行されないようです。

ベストアンサー1

複数のセレクターをコンマで組み合わせることができます。

$('#Create .myClass,#Edit .myClass').plugin({options here});

または、フォーム要素がたくさんある場合は、すべてのフォーム要素にクラスを追加して、そのクラス内で検索することもできます。検索を制限することで得られるはずの速度の節約は得られませんが、私だったらあまり気にしないと思います。ブラウザは、ユーザーの知らないところで一般的な操作を最適化するために、さまざまな高度な処理を行っています。シンプルなクラス セレクターの方が高速かもしれません。

おすすめ記事