1. ホーム
  2. jquery

[解決済み] .data()のkey/valueに基づくフィルタリング要素

2022-02-19 07:22:29

質問

4つのdiv要素にclass .navlink を使用し、クリックすると .data() というキーを設定します。 'selected' の値に変換します。 true :

$('.navlink')click(function() { $(this).data('selected', true); })

新しい .navlink がクリックされたときに、前に選択した navlink を後で操作できるようにします。を使用して保存された内容に基づいて要素を選択する、簡単で迅速な方法はありますか? .data() ?

jQueryはないようです。 :フィルター を試してみたのですが、なぜかうまくいきません(同じクリックイベント内で)。

var $previous = $('.navlink').filter( 
    function() { $(this).data("selected") == true }
);

他の方法があることは知っていますが、今はただ、この方法が .data() .

解決方法は?

しかし、フィルタに渡された関数の中で、一致するオブジェクトに対して true を返さなければ、オブジェクトを取得することはできません。

var $previous = $('.navlink').filter(function() { 
  return $(this).data("selected") == true 
});