jQueryのeach()でHTML要素のループ処理を行う方法

jQueryのeach()でHTML要素のループ処理を行う方法 jQuery

ここでは、jQueryeach()メソッドを用いて指定したHTML要素に対してループ処理を行う方法について見ていきます。

each()メソッドとは

each()メソッドは、指定したHTML要素や配列、オブジェクトに対してループ処理を行うメソッドです。
今回は指定したHTML要素に対してループ処理を行う方法について見ていきます。

each()メソッドの書き方

$(function() {
HTML要素.each(function([インデックス番号, HTML要素]) {
処理
}
});

使用例

関数の引数を指定しない場合

HTML
<ul>
  <li></li>
  <li></li>
  <li></li>
</ul>
jQuery
$(function() {
  $("li").each(function() {
    $(this).text("リスト");
  });
});

ここでは、それぞれの<li>のテキストを「リスト」と表示させるという内容になっています。
$(this)はそれぞれの繰り返しで対象となる要素のことですね。

では結果を見てみましょう。

結果

こうですね。
ちゃんと、それぞれの<li>要素に対して「リスト」というテキストが生成されていますね。

関数の引数を指定する場合

HTML
<ul>
  <li>リストA</li>
  <li>リストB</li>
  <li>リストC</li>
</ul>
jQuery
$(function() {
  $("li").each(function(index, element) {
    $("p").append(
      index + ":" + $(element).text() + ", "
    );
  });
});

それぞれの<li>要素のインデックス番号(=index)と、要素(=element)のテキストをappend()メソッドを用いて<p>要素に追加していくという内容になります。

では、結果を見てみましょう。

結果

こうですね。
一番下にそれぞれの<li>要素のインデックス番号とテキストが表示されていますね。

まとめ

以上のように記述することでeach()メソッドを用いて指定したHTML要素に対してループ処理を実行させることができます。

コメント

タイトルとURLをコピーしました