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

質問編集履歴

2

javascript がマークダウンになってなかったので、訂正しました。

2021/03/07 11:51

投稿

shidada
shidada

スコア4

title CHANGED
File without changes
body CHANGED
@@ -35,10 +35,9 @@
35
35
  </body>
36
36
  </html>
37
37
 
38
-
38
+ ```
39
- ```javascript
39
+ javascript
40
-
41
- function cre () {
40
+ ```function cre () {
42
41
  document.createElement('option');
43
42
  };
44
43
 
@@ -69,6 +68,9 @@
69
68
  takaki(i,num[j]);
70
69
  };
71
70
  };
71
+ ```
72
+
73
+
72
74
 
73
75
 
74
76
 

1

forのところを9つ書いていたところを配列を使って、まとめることができました。

2021/03/07 11:51

投稿

shidada
shidada

スコア4

title CHANGED
@@ -1,1 +1,1 @@
1
- javascript簡単なリファクタリングす、初心者です。
1
+ HTML複数のIDをjavascript一斉に呼び出したい
body CHANGED
@@ -3,8 +3,10 @@
3
3
  知識0から調べながら数独を作ろうと思っております。
4
4
 
5
5
  今、1~9を入力するのを作っているところです。
6
- とりあえず9マス作ってみたのですが、繰り返して書いているところが多いので、関数や何か利用て、リファクタリングしたいと思いました。
6
+ とりあえず9マス(ゴールは81マス)作ってみたのですが、繰り返して書いているところをもう少簡単にできればと思い、質問させていただきました。
7
7
 
8
+ htmlのID(num1_1 ~ num1_9)をjavascriptで呼び出すときに
9
+ 一斉に呼び出す方法はないのかを教えていただきたいです。
8
10
 
9
11
 
10
12
  ### 該当のソースコード
@@ -57,58 +59,25 @@
57
59
  let num1_8 = document.getElementById("num1_8");
58
60
  let num1_9 = document.getElementById("num1_9");
59
61
 
60
- cre();
61
- for(let i =0 ; i<=9 ; i++){
62
- takaki(i,num1_1);
63
- };
64
-
65
- for(let i =0 ; i<=9 ; i++){
66
- takaki(i,num1_2);
67
- };
68
62
 
69
- for(let i =0 ; i<=9 ; i++){
63
+ const num = [num1_1,num1_2,num1_3,num1_4,num1_5,num1_6,num1_7,num1_8,num1_9];
70
- takaki(i,num1_3);
71
- };
72
-
73
- for(let i =0 ; i<=9 ; i++){
74
- takaki(i,num1_4)
75
- };
76
64
 
77
65
 
66
+ cre();
67
+ for (let j=0 ;j<9 ;j++){
78
68
  for(let i =0 ; i<=9 ; i++){
79
- takaki(i,num1_5);
69
+ takaki(i,num[j]);
80
70
  };
71
+ };
72
+
81
73
 
82
74
 
83
- for(let i =0 ; i<=9 ; i++){
84
- takaki(i,num1_6);
85
- };
86
-
87
-
88
- for(let i =0 ; i<=9 ; i++){
89
- takaki(i,num1_7);
90
- };
91
-
92
-
93
- for(let i =0 ; i<=9 ; i++){
94
- takaki(i,num1_8);
95
- };
96
-
97
- for(let i =0 ; i<=9 ; i++){
98
- takaki(i,num1_9);
99
- };
100
-
101
-
102
-
103
-
104
75
  ### 試したこと
105
76
 
106
77
  配列を使って
107
78
  [num1_1,num1_2,num1_3,...,num1_9]
108
79
  として
109
-
110
- [i]=
111
- みたいな感じでfor文を使ってやろうとしたのですが
80
+ for文を使ってやろうとしたのですが
112
81
  htmlの時点でnum1_1~num1_9を書いてしまっているので
113
82
  どうにもできませんでした。。。
114
83