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

質問編集履歴

3

情報追加

2021/12/20 02:53

投稿

aRyo
aRyo

スコア23

title CHANGED
File without changes
body CHANGED
@@ -446,12 +446,11 @@
446
446
  </body>
447
447
  </html>
448
448
  ```
449
+ ![イメージ説明](a53428aa69775cc5647fb744bdd4d0ec.png)
450
+ ここの生成された表の選択肢を設定する方法が分からないです
449
451
 
450
452
 
451
453
 
452
454
 
453
-
454
-
455
-
456
455
  調べたのですが、良く分からず詰まってしまいました。
457
456
  ご助言の程、よろしくお願いいたします。

2

情報追加

2021/12/20 02:53

投稿

aRyo
aRyo

スコア23

title CHANGED
File without changes
body CHANGED
@@ -36,5 +36,422 @@
36
36
  newCell.appendChild(newText);
37
37
  ```
38
38
 
39
+
40
+
41
+
42
+
43
+ 以上のコードを踏まえ、このような物を作りたいです。(※まだ途中です!)
44
+ 圃場と農薬カテゴリを選択すると自動的に入力画面が生成される感じですね。
45
+ ```JavaScript,html
46
+ <!DOCTYPE html>
47
+ <html lang="ja">
48
+ <head>
49
+ <meta charset="UTF-8">
50
+ <title>サンプル</title>
51
+ </head>
52
+ <body>
53
+
54
+ <p>農薬管理フォームです。</p>
55
+
56
+ <label for="day">日付を選択してください</label>
57
+ <p><span id="span1"></span></p>
58
+ <form name="form1">
59
+ <p></p>
60
+ <input name="date" type="date" />
61
+ <p></p>
62
+ </form>
63
+
64
+
65
+ <label for="name">記帳者を選択してください</label>
66
+ <p><span id="span2"></span></p>
67
+ <form name="form2">
68
+ <select id="name">
69
+ <option value="あああ">あああ</option>
70
+ <option value="いいい">いいい</option>
71
+ </select>
72
+ </form>
73
+ <p></p>
74
+
75
+
76
+ <p></p>
77
+ <label for="kategori">農薬を選択してください</label>
78
+ <p><span id="span3"></span></p>
79
+ <form name="form3">
80
+ <p></p>
81
+ <table border="1">
82
+
83
+
84
+ <tr>
85
+ <td></td>
86
+ <th>あ</th>
87
+ <th>い</th>
88
+ <th>う</th>
89
+ <th>え</th>
90
+ <tr>
91
+
92
+ <tr>
93
+ <td>殺菌剤</td>
94
+ <th>
95
+ <select id="sakkin_m">
96
+ <option value="0">0</option>
97
+ <option value="1">1</option>
98
+ <option value="2">2</option>
99
+ <option value="3">3</option>
100
+ <option value="4">4</option>
101
+ <option value="5">5</option>
102
+ <option value="6">6</option>
103
+ </select>
104
+ </th>
105
+ <th>
106
+ <select id="sakkin_k">
107
+ <option value="0">0</option>
108
+ <option value="1">1</option>
109
+ <option value="2">2</option>
110
+ <option value="3">3</option>
111
+ <option value="4">4</option>
112
+ <option value="5">5</option>
113
+ <option value="6">6</option>
114
+ </select>
115
+ </th>
116
+ <th>
117
+ <select id="sakkin_i">
118
+ <option value="0">0</option>
119
+ <option value="1">1</option>
120
+ <option value="2">2</option>
121
+ <option value="3">3</option>
122
+ <option value="4">4</option>
123
+ <option value="5">5</option>
124
+ <option value="6">6</option>
125
+ </select>
126
+ </th>
127
+ <th>
128
+ <select id="sakkin_s">
129
+ <option value="0">0</option>
130
+ <option value="1">1</option>
131
+ <option value="2">2</option>
132
+ <option value="3">3</option>
133
+ <option value="4">4</option>
134
+ <option value="5">5</option>
135
+ <option value="6">6</option>
136
+ </select>
137
+ </th>
138
+ </tr>
139
+
140
+
141
+ <tr>
142
+ <td>殺虫剤</td>
143
+ <th>
144
+ <select id="saccyu_m">
145
+ <option value="0">0</option>
146
+ <option value="1">1</option>
147
+ <option value="2">2</option>
148
+ <option value="3">3</option>
149
+ <option value="4">4</option>
150
+ <option value="5">5</option>
151
+ <option value="6">6</option>
152
+ </select>
153
+ </th>
154
+ <th>
155
+ <select id="saccyu_k">
156
+ <option value="0">0</option>
157
+ <option value="1">1</option>
158
+ <option value="2">2</option>
159
+ <option value="3">3</option>
160
+ <option value="4">4</option>
161
+ <option value="5">5</option>
162
+ <option value="6">6</option>
163
+ </select>
164
+ </th>
165
+ <th>
166
+ <select id="saccyu_i">
167
+ <option value="0">0</option>
168
+ <option value="1">1</option>
169
+ <option value="2">2</option>
170
+ <option value="3">3</option>
171
+ <option value="4">4</option>
172
+ <option value="5">5</option>
173
+ <option value="6">6</option>
174
+ </select>
175
+ </th>
176
+ <th>
177
+ <select id="saccyu_s">
178
+ <option value="0">0</option>
179
+ <option value="1">1</option>
180
+ <option value="2">2</option>
181
+ <option value="3">3</option>
182
+ <option value="4">4</option>
183
+ <option value="5">5</option>
184
+ <option value="6">6</option>
185
+ </select>
186
+ </th>
187
+ </tr>
188
+
189
+
190
+ <tr>
191
+ <td>展着剤</td>
192
+ <th>
193
+ <select id="tenchaku_m">
194
+ <option value="0">0</option>
195
+ <option value="1">1</option>
196
+ <option value="2">2</option>
197
+ <option value="3">3</option>
198
+ <option value="4">4</option>
199
+ <option value="5">5</option>
200
+ <option value="6">6</option>
201
+ </select>
202
+ </th>
203
+ <th>
204
+ <select id="tenchaku_k">
205
+ <option value="0">0</option>
206
+ <option value="1">1</option>
207
+ <option value="2">2</option>
208
+ <option value="3">3</option>
209
+ <option value="4">4</option>
210
+ <option value="5">5</option>
211
+ <option value="6">6</option>
212
+ </select>
213
+ </th>
214
+ <th>
215
+ <select id="tenchaku_i">
216
+ <option value="0">0</option>
217
+ <option value="1">1</option>
218
+ <option value="2">2</option>
219
+ <option value="3">3</option>
220
+ <option value="4">4</option>
221
+ <option value="5">5</option>
222
+ <option value="6">6</option>
223
+ </select>
224
+ </th>
225
+ <th>
226
+ <select id="tenchaku_s">
227
+ <option value="0">0</option>
228
+ <option value="1">1</option>
229
+ <option value="2">2</option>
230
+ <option value="3">3</option>
231
+ <option value="4">4</option>
232
+ <option value="5">5</option>
233
+ <option value="6">6</option>
234
+ </select>
235
+ </th>
236
+ </tr>
237
+
238
+
239
+ <tr>
240
+ <td>天敵</td>
241
+ <th>
242
+ <select id="tenteki_m">
243
+ <option value="0">0</option>
244
+ <option value="1">1</option>
245
+ <option value="2">2</option>
246
+ <option value="3">3</option>
247
+ <option value="4">4</option>
248
+ <option value="5">5</option>
249
+ <option value="6">6</option>
250
+ </select>
251
+ </th>
252
+ <th>
253
+ <select id="tenteki_k">
254
+ <option value="0">0</option>
255
+ <option value="1">1</option>
256
+ <option value="2">2</option>
257
+ <option value="3">3</option>
258
+ <option value="4">4</option>
259
+ <option value="5">5</option>
260
+ <option value="6">6</option>
261
+ </select>
262
+ </th>
263
+ <th>
264
+ <select id="tenteki_i">
265
+ <option value="0">0</option>
266
+ <option value="1">1</option>
267
+ <option value="2">2</option>
268
+ <option value="3">3</option>
269
+ <option value="4">4</option>
270
+ <option value="5">5</option>
271
+ <option value="6">6</option>
272
+ </select>
273
+ </th>
274
+ <th>
275
+ <select id="tenteki_s">
276
+ <option value="0">0</option>
277
+ <option value="1">1</option>
278
+ <option value="2">2</option>
279
+ <option value="3">3</option>
280
+ <option value="4">4</option>
281
+ <option value="5">5</option>
282
+ <option value="6">6</option>
283
+ </select>
284
+ </th>
285
+ </tr>
286
+
287
+
288
+ <tr>
289
+ <td>その他</td>
290
+ <th>
291
+ <select id="sonota_m">
292
+ <option value="0">0</option>
293
+ <option value="1">1</option>
294
+ <option value="2">2</option>
295
+ <option value="3">3</option>
296
+ <option value="4">4</option>
297
+ <option value="5">5</option>
298
+ <option value="6">6</option>
299
+ </select>
300
+ </th>
301
+ <th>
302
+ <select id="sonota_k">
303
+ <option value="0">0</option>
304
+ <option value="1">1</option>
305
+ <option value="2">2</option>
306
+ <option value="3">3</option>
307
+ <option value="4">4</option>
308
+ <option value="5">5</option>
309
+ <option value="6">6</option>
310
+ </select>
311
+ </th>
312
+ <th>
313
+ <select id="sonota_i">
314
+ <option value="0">0</option>
315
+ <option value="1">1</option>
316
+ <option value="2">2</option>
317
+ <option value="3">3</option>
318
+ <option value="4">4</option>
319
+ <option value="5">5</option>
320
+ <option value="6">6</option>
321
+ </select>
322
+ </th>
323
+ <th>
324
+ <select id="sonota_s">
325
+ <option value="0">0</option>
326
+ <option value="1">1</option>
327
+ <option value="2">2</option>
328
+ <option value="3">3</option>
329
+ <option value="4">4</option>
330
+ <option value="5">5</option>
331
+ <option value="6">6</option>
332
+ </select>
333
+ </th>
334
+ </tr>
335
+
336
+ </table>
337
+ </form>
338
+ <p></p>
339
+
340
+ <p>
341
+ <table border="1" id="targetTable">
342
+ <thead>
343
+ <tr>
344
+ <td>圃場名</td>
345
+ <td>カテゴリ</td>
346
+ <td>農薬名</td>
347
+ <td>総量</td>
348
+ <td>単位</td>
349
+ </tr>
350
+ </thead>
351
+ <tbody>
352
+ <tr>
353
+ <td>(例)</td>
354
+ <td>殺菌剤</td>
355
+ <td>アフェット</td>
356
+ <td>600</td>
357
+ <td>g</td>
358
+ </tr>
359
+ <tbody>
360
+ </table>
361
+ </p>
362
+
363
+
364
+ <div>
365
+ <input type="button" value="ボタン1" onclick="clickBtn1()"/>
366
+ </div>
367
+
368
+ <script>
369
+ function clickBtn1(){
370
+ ///////////////////////////////////////////////////////////////////////////////
371
+ //日付の抽出
372
+ //const day = document.form1.date;
373
+
374
+ // 値(数値)を取得
375
+ //const num = day.selectedIndex;
376
+
377
+ // 値(数値)から値(value値)を取得
378
+ //const str = day.options[num].value;
379
+
380
+ //document.getElementById("span1").textContent = str;
381
+
382
+ ///////////////////////////////////////////////////////////////////////////////
383
+ //記帳者の抽出
384
+ const name = document.form2.name;
385
+
386
+ // 値(数値)を取得
387
+ const num2 = name.selectedIndex;
388
+
389
+ // 値(数値)から値(value値)を取得
390
+ const str2 = name.options[num2].value;
391
+ document.getElementById("span2").textContent = str2;
392
+
393
+
394
+
395
+ ///////////////////////////////////////////////////////////////////////////////
396
+ //カテゴリと圃場の抽出
397
+ const sakkin_maruyama = document.form3.sakkin_m;
398
+ // 値(数値)を取得
399
+ const num3 = sakkin_maruyama.selectedIndex;
400
+ // 値(数値)から値(value値)を取得
401
+ const str3 = sakkin_m.options[num3].value;
402
+
403
+
404
+
405
+ const sakkin_kamo = document.form3.sakkin_k;
406
+ // 値(数値)を取得
407
+ const num4 = sakkin_kamo.selectedIndex;
408
+ // 値(数値)から値(value値)を取得
409
+ const str4 = sakkin_k.options[num4].value;
410
+
411
+
412
+ const saccyu_maruyama = document.form3.saccyu_m;
413
+ // 値(数値)を取得
414
+ const num5 = saccyu_m.selectedIndex;
415
+ // 値(数値)から値(value値)を取得
416
+ const str5 = saccyu_m.options[num5].value;
417
+
418
+ ///////////////////////////////////////////////////////////////////////////////
419
+ //テーブル編集
420
+ //圃場とカテゴリの選択した数だけ表を追加するスクリプト
421
+
422
+ for(i = 0; i < Number(str3); i++){
423
+ let table = document.getElementById('targetTable');
424
+ let newRow = table.insertRow();
425
+
426
+ let newCell = newRow.insertCell();
427
+ let newText = document.createTextNode('あ');
428
+ newCell.appendChild(newText);
429
+
430
+ newCell = newRow.insertCell();
431
+ newText = document.createTextNode(殺菌剤);
432
+ newCell.appendChild(newText);
433
+
434
+ newCell = newRow.insertCell();
435
+ newCell.innerHTML = `<select>`;//ここでの選択支の指定方法でつまっています!!!
436
+
437
+ newCell = newRow.insertCell();
438
+ newCell.innerHTML = `<input>`;
439
+
440
+ }
441
+
442
+
443
+ }
444
+ </script>
445
+
446
+ </body>
447
+ </html>
448
+ ```
449
+
450
+
451
+
452
+
453
+
454
+
455
+
39
456
  調べたのですが、良く分からず詰まってしまいました。
40
457
  ご助言の程、よろしくお願いいたします。

1

情報追加

2021/12/20 02:34

投稿

aRyo
aRyo

スコア23

title CHANGED
File without changes
body CHANGED
@@ -1,9 +1,10 @@
1
1
  やりたい事
2
- JavaScriptでtableにプルダウンと入力画面を追加する方法
2
+ JavaScriptでtableにプルダウンと入力画面を追加したい。
3
3
 
4
4
  こちらのサイトを参考にしました。
5
5
  https://techacademy.jp/magazine/28581
6
6
 
7
+ JavaScriptで行を追加し、追加した行の中でプルダウンや入力をできるようにしたいです。
7
8
 
8
9
  ```html
9
10
  <table border="1" id="targetTable">