teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

.

2021/03/11 15:31

投稿

NayuNayu
NayuNayu

スコア11

answer CHANGED
@@ -6,19 +6,20 @@
6
6
  以下のようにすべての行の最初の列を配列取得して、1つずつループして判定していくのはどうでしょう。
7
7
 
8
8
  ```JavaScript
9
+ document.addEventListener("DOMContentLoaded",function(){
9
- //CSS の記載方法(セレクタ式)で、[id^='1st']の要素を全て取得する
10
+ //CSS の記載方法(セレクタ式)で、[id^='1st']の要素を全て取得する
10
- var firstColums = document.querySelectorAll("[id^='1st']");
11
+ var firstColums = document.querySelectorAll("[id^='1st']");
11
- console.log(firstColums);
12
+ console.log(firstColums);
12
13
 
13
- //取得した要素数ループ
14
+ //取得した要素数ループ
14
- for (const firstColumn of firstColums) {
15
+ for (const firstColumn of firstColums) {
15
-  //要素のtextContent(要素の中身)が空白の場合はFalseとなるので、!つけて判定
16
+ //要素のtextContent(要素の中身)が空白の場合はFalseとなるので、!つけて判定
16
- if (!firstColumn.textContent) {
17
+ if (!firstColumn.textContent) {
17
- console.log(firstColumn.id + ":空欄");
18
+ console.log(firstColumn.id + ":空欄");
18
- break; //1つでも空白あればループ抜ける
19
+ break; //1つでも空白あればループ抜ける
20
+ }
19
21
  }
20
- }
22
+ },false)
21
-
22
23
  ```
23
24
 
24
25
  出来れば各行の1列目の列のIDを全て書かずに、それぞれの一列目が空欄か確認したいとのことですので、id で要素取得したくないなら、最初の要素取得処理を以下のように「最初の子要素となるtdタグ」を指定してもいいと思います。