0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JavaScript DOM操作③ 「タグ名をキーに要素を取得」

Last updated at Posted at 2021-11-07

##1. はじめに
本記事では、JavaScript DOM操作の
「タグ名をキーに要素を取得」
について記載する。
##2. getElementsByTagName
###役割
:::note
HTML内の指定したタグ名を持つ要素を取得するメソッド
:::
##3. どうやって書くの?
###構文
構文は以下のようになる。

index.js
let 変数名 = document.getElementsByTagName('タグ名');

###補足
:::note warn
()内にHTML内で記載したタグ名を記述する。
(タグ名はシングルクォーテーションorダブルクォーテーションで囲う)
:::
##4. 例題
###内容
:::note warn
タグ名が<div>の要素を取得し、その内容をコンソールへ出力する。
:::


###実践前のチュートリアル 実践に入る前に、完成形を先に表示しておく。 ![ezgif.com-gif-maker.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/662822/0c4fbb59-a67a-c372-25a3-bf035fcd4436.gif) 仕組みとしては、以下のようになっている。

HTMLに5つのタグを記述し、5つのタグ内には要素を記述する。+取得ボタン込み

取得ボタンをクリックすると、JavaScriptで指定したタグ内の要素をコンソールへ出力するようにする。


###マークアップ ブラウザに文字列を表示しないといけないので、HTMLの作成から取り掛かる。
index.html
```index.html Document
要素1(div)

要素2(p)

要素3(div)
要素4(span)
要素5(div)
<input type="button" value="取得" onclick="showElements()" />

<script src="js/index.js"></script>
```
※inputタグ内の記述に関しては、[こちら](https://qiita.com/Stack_up_Rising/items/238661a082eb3ce8979c#%E3%83%9E%E3%83%BC%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97)にて詳細説明済
マークアップしブラウザで表示すると以下のようになる。 ![スクリーンショット 2021-11-07 18.30.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/662822/b06769f1-04ba-6564-d339-cd2135409dfc.png)
###JavaScriptの記述 次にJavaScriptを仕上げていく。 ####getElementsByTagNameの処理
index.js
index.js
function showElements() {
  let elements = document.getElementsByTagName('div');
  for (let i = 0; i < elements.length; i++) {
    console.log(elements[i].innerText);
  }
}
上記構文に関して、順を追って解説していく。 #####function showElements() :::note warn HTML内のinputタグにあるonclick属性のshowElementsで関数を作成していく。 ::: #####let elements = document.getElementsByTagName('div'); :::note warn elememtsという変数を定義し、getElementsByTagNameメソッドでHTML内のタグ内の要素を取得する。 ::: #####for (let i = 0; i < elements.length; i++) :::note warn forを使う理由として、HTML内の要素を取得するために繰り返し処理を実行する必要があるため。 ::: :::note warn elements.lengthは、変数elementsで取得したタグの個数を表している。 ::: #####console.log(elements[i].innerText); :::note warn コンソールへ出力する際、forで定義した変数iを配列として記述し、innerTextと結合させることによってタグ内の要素を出力することができる。 :::
###ブラウザでの検証 実際にブラウザにて挙動を確認していく。 ![ezgif.com-gif-maker.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/662822/3aed80c3-1581-8bda-5f18-ca4f7b97809d.gif) 検証の結果、

複数のタグの中で、<div>タグ内の要素をコンソールへ出力するすることが出来た。

##5. おわりに
次項:JavaScript DOM操作④ 「name属性をキーに要素を取得」に続く。

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?