質問: ### 前提・実現したいこと 指定した値のクラス名を持つ要素を全て取得したいのですが、 意図した結果になりません。 ご教示お願いします。 ### 試したこと こちらを参考にしました。 要素は指定せず、指定した値が含まれている属性だけ指定して取得したいと思いました。 「sample」という値を含むクラス名の要素を全て取得して回そうとしましたが、 回してる中でログが変なふうになりました。 ``` 10 20 30 ``` ``` $(function() { $("[class*='sample']").each(function(element){ console.log($(element).text()); console.log("test1"); }); console.log("test2"); }); ``` ・出力結果。 ``` (空行) test1 (空行) test1 test2 ```
回答: `$.fn.each`の引数は、**1つ目がインデックス**、2つ目が要素となっています(jQueryリファレンス)。このままでは、`element`で取れるのはインデックスになります。 ``` $(function() { // 使わない引数はアンダーバーで始める慣習 $("[class*='sample']").each(function(_index, element){ ``` なお、2つしか取れないのは、`calss`というスペルミスのせいだと思われます。