回答編集履歴

9

 

2022/12/05 11:04

投稿

退会済みユーザー
test CHANGED
@@ -1,8 +1,6 @@
1
- > Tableクラスの中で宣言されたTdクラスから,Tableクラスのメソッドを呼び出す方法 (原文ママ)
1
+ > Tableクラスの中で宣言されたTdクラスから,Tableクラスのメソッドを呼び出す方法
2
2
 
3
- 質問記載の内容では、追加後の番号の付番規則が不明確ですが、
4
- 仮に「最初から表示されている行についてボタンを押した場合に、ボタンを押した行の番号に0.1を足した番号がついた行を1つ後ろに追加する」というのであれば、
5
- 下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
3
+ 変更を最小限にするならば、下記のようにすればよいのではないでしょうか
6
4
 
7
5
  + Table 内でTd (ボタン)を生成するときに、自分自身のインスタンスを渡すようにする。
8
6
  ```diff

8

  

2022/12/04 04:59

投稿

退会済みユーザー
test CHANGED
@@ -1,7 +1,7 @@
1
1
  > Tableクラスの中で宣言されたTdクラスから,Tableクラスのメソッドを呼び出す方法 (原文ママ)
2
2
 
3
3
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
4
- 仮に「最初表示されている行について、ボタンを押した行の番号に0.1を足した番号がついた行をその行の1つ後ろに追加する」というのであれば、
4
+ 仮に「最初から表示されている行についてボタンを押した場合に、ボタンを押した行の番号に0.1を足した番号がついた行を1つ後ろに追加する」というのであれば、
5
5
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
6
6
 
7
7
  + Table 内でTd (ボタン)を生成するときに、自分自身のインスタンスを渡すようにする。

7

 

2022/12/04 04:58

投稿

退会済みユーザー
test CHANGED
@@ -1,3 +1,5 @@
1
+ > Tableクラスの中で宣言されたTdクラスから,Tableクラスのメソッドを呼び出す方法 (原文ママ)
2
+
1
3
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
2
4
  仮に「最初に表示されている行について、ボタンを押した行の番号に0.1を足した番号がついた行をその行の1つ後ろに追加する」というのであれば、
3
5
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)

6

 

2022/12/04 04:57

投稿

退会済みユーザー
test CHANGED
@@ -1,5 +1,5 @@
1
1
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
2
- 仮に「最初に表示さている行に関して、ボタンを押した行の番号に0.1を足した番号がついた行を1つ後ろに追加する」というのであれば、
2
+ 仮に「最初に表示さている行について、ボタンを押した行の番号に0.1を足した番号がついた行をその行の1つ後ろに追加する」というのであれば、
3
3
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
4
4
 
5
5
  + Table 内でTd (ボタン)を生成するときに、自分自身のインスタンスを渡すようにする。

5

 

2022/12/04 04:56

投稿

退会済みユーザー
test CHANGED
@@ -1,5 +1,5 @@
1
1
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
2
- 仮に「ボタンを押した行の番号に0.1を足した番号がついた行を(そのボタンを押した行の1つ前または1つ後ろに)追加する」というのであれば、
2
+ 仮に「最初に表示さている行に関して、ボタンを押した行の番号に0.1を足した番号がついた行を1つ後ろに追加する」というのであれば、
3
3
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
4
4
 
5
5
  + Table 内でTd (ボタン)を生成するときに、自分自身のインスタンスを渡すようにする。

4

 

2022/12/04 04:38

投稿

退会済みユーザー
test CHANGED
@@ -1,16 +1,14 @@
1
1
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
2
- 仮に「ボタンを押した行の番号に0.1を足した番号がついた行を追加する」というのであれば、
2
+ 仮に「ボタンを押した行の番号に0.1を足した番号がついた行を(そのボタンを押した行の1つ前または1つ後ろに)追加する」というのであれば、
3
3
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
4
4
 
5
- + Table 内でTd を生成するときに、自分自身のインスタンスを渡すようにする。
5
+ + Table 内でTd (ボタン)を生成するときに、自分自身のインスタンスを渡すようにする。
6
6
  ```diff
7
7
 
8
8
  class Table {
9
9
 
10
10
  createOneLine(num) {
11
11
 
12
- - let text = new Td(index, "Text is written here.", "input");
13
- + let text = new Td(index, "Text is written here.", "input", this);
14
12
  - let func = new Td(index, "+", "button");
15
13
  + let func = new Td(index, "+", "button", this);
16
14
   略
@@ -80,7 +78,7 @@
80
78
  let trElem = document.createElement('tr');
81
79
  let index = FLOAT_SUB(num, 1);
82
80
  let th = new Th(index, num);
83
- let text = new Td(index, "Text is written here.", "input", this);
81
+ let text = new Td(index, "Text is written here.", "input");
84
82
  let func = new Td(index, "+", "button", this);
85
83
  trElem.appendChild(th.thElem);
86
84
  trElem.appendChild(text.tdElem);

3

 

2022/12/04 04:32

投稿

退会済みユーザー
test CHANGED
@@ -12,7 +12,7 @@
12
12
  - let text = new Td(index, "Text is written here.", "input");
13
13
  + let text = new Td(index, "Text is written here.", "input", this);
14
14
  - let func = new Td(index, "+", "button");
15
- + let func = new Td(index, "+", "button", this);
15
+ + let func = new Td(index, "+", "button", this);
16
16
   略
17
17
  }
18
18
  ```

2

 

2022/12/04 04:32

投稿

退会済みユーザー
test CHANGED
@@ -1,6 +1,21 @@
1
1
  質問記載の内容では、追加後の番号の付番規則が不明確ですが、
2
2
  仮に「ボタンを押した行の番号に0.1を足した番号がついた行を追加する」というのであれば、
3
3
  下記のようにすればよいのではないでしょうか(変更を最小限にしたものです)
4
+
5
+ + Table 内でTd を生成するときに、自分自身のインスタンスを渡すようにする。
6
+ ```diff
7
+
8
+ class Table {
9
+
10
+ createOneLine(num) {
11
+
12
+ - let text = new Td(index, "Text is written here.", "input");
13
+ + let text = new Td(index, "Text is written here.", "input", this);
14
+ - let func = new Td(index, "+", "button");
15
+ + let func = new Td(index, "+", "button", this);
16
+  略
17
+ }
18
+ ```
4
19
 
5
20
  + Td のコンストラクタで、table のインスタンスを受け取るようにしておく。
6
21
  ```diff
@@ -16,7 +31,6 @@
16
31
  }
17
32
  ```
18
33
 
19
-
20
34
  + ボタンをクリックしたら、table の setNewOneLine メソッドを呼び出す。
21
35
  ```diff
22
36
  class Td {
@@ -31,20 +45,7 @@
31
45
  this.tdElem.appendChild(btnElem);
32
46
  }
33
47
  ```
34
- + Table 内でTd を生成するときに、自分自身のインスタンスを渡すようにする。
35
- ```diff
36
48
 
37
- class Table {
38
-
39
- createOneLine(num) {
40
-
41
- - let text = new Td(index, "Text is written here.", "input");
42
- + let text = new Td(index, "Text is written here.", "input", this);
43
- - let func = new Td(index, "+", "button");
44
- + let func = new Td(index, "+", "button", this);
45
-  略
46
- }
47
- ```
48
49
 
49
50
 
50
51
  修正後のコード全体:

1

 

2022/12/04 04:30

投稿

退会済みユーザー
test CHANGED
@@ -169,15 +169,4 @@
169
169
  ```
170
170
 
171
171
 
172
- createElem メソッド内で parentTable の setNewOneLine を呼び出すようにする。
173
- ```diff
174
- createBtnElem() { // ボタンをtdElementの子要素として追加
175
- let btnElem = document.createElement('button');
176
- btnElem.type = "button";
177
- btnElem.innerText = this.text;
178
172
 
179
- btnElem.addEventListener('click', () => {
180
- // ここに新しく行を追加する処理を書きたい.
181
- + this.parentTable.setNewOneLine((this.index + 1.1).toFixed(1))
182
- });
183
- ```