回答編集履歴

1

調整

2023/02/14 11:00

投稿

yambejp
yambejp

スコア117740

test CHANGED
@@ -11,3 +11,42 @@
11
11
  <input type="submit" value="send">
12
12
  </form>
13
13
  ```
14
+ # 調整版
15
+ こんな感じで?
16
+ ```javascript
17
+ <?PHP
18
+ print_r($_POST);
19
+ ?>
20
+ <script>
21
+ window.addEventListener('DOMContentLoaded', ()=>{
22
+ add.addEventListener('click',()=>{
23
+ u1.appendChild(u1.querySelector('li').cloneNode(true))
24
+ })
25
+ del.addEventListener('click',()=>{
26
+ if(u1.querySelector('li:nth-child(2)')){
27
+ u1.querySelector('li:last-child').remove();
28
+ }
29
+ })
30
+ });
31
+ document.addEventListener('formdata',e=>{
32
+ const f=e.formData;
33
+ const n=f.getAll('name[]');
34
+ f.delete('name[]');
35
+ const t=f.getAll('tel[]');
36
+ f.delete('tel[]');
37
+ n.forEach((x,y)=>{
38
+ f.set(`hoge[${y}][0]`,x);
39
+ f.set(`hoge[${y}][1]`,t[y]);
40
+ });
41
+ });
42
+ </script>
43
+ <form method="post">
44
+ <input type="button" value="add" id="add">
45
+ <input type="button" value="del" id="del">
46
+ <input type="submit" value="send">
47
+ <hr>
48
+ <ul id="u1">
49
+ <li><input type="text" name="name[]" /><input type="text" name="tel[]" /></li>
50
+ </ul>
51
+ </form>
52
+ ```