質問編集履歴

4

問題を修正しました

2021/11/17 12:10

投稿

meiyin
meiyin

スコア1

test CHANGED
@@ -1 +1 @@
1
- Laravel:JavaScriptからModalに値を渡せているのに編集ができない
1
+ Laravel:jQueryからModalに値を渡せているのに編集ができない
test CHANGED
@@ -1,12 +1,18 @@
1
1
  ##問題
2
2
 
3
- 編集機能部分をModalで実装しましたが、なぜかJSから渡したい値はModalに渡せているのに編集ができません。
3
+ 編集機能部分をModalで実装しましたが、なぜかjQueryから渡したい値はModalに渡せているのに編集ができません。
4
+
5
+ 編集ができないというのはfolder1からfolder2に変更できないという事です。
4
6
 
5
7
  値が渡せていることは検証上で確認しました。
6
8
 
7
9
  更新ボタンを押してもリロードされる動作はありますが、編集はされずControllerでddメソッドを使って確認しましたが表示されなかった為Controllerに行き届いていません。
8
10
 
11
+
12
+
13
+ 私が思うのは現時点でinputタグのvalue属性にjQueryで値を渡す際、valメソッドを使うのが原因なのかなと考えています。
14
+
9
- 何が原因かを知りたす。
15
+ 他にどんなメソッドや書き方をするべきか、もしくはその他の原因があればご教示頂ければと思す。
10
16
 
11
17
 
12
18
 
@@ -16,21 +22,13 @@
16
22
 
17
23
 
18
24
 
19
- ##Route部分
20
-
21
- ```
22
-
23
- Route::post('/home/folder/update', 'HomeController@UpdateFolder')->name('update.folder');
24
-
25
- ```
26
-
27
25
 
28
26
 
29
27
  ##編集ボタン部分
30
28
 
31
29
  編集ボタンを押したらModalが出ます。
32
30
 
33
- data-titleとdata-urlがJSに渡したい値で追加しています。
31
+ data-titleとdata-urlがjQueryに渡したい値で追加しています。
34
32
 
35
33
  ```blade.php
36
34
 
@@ -114,7 +112,7 @@
114
112
 
115
113
 
116
114
 
117
- ##JS部分
115
+ ##jQuery部分
118
116
 
119
117
  ```
120
118
 
@@ -136,9 +134,9 @@
136
134
 
137
135
  //Ajaxの処理はここに
138
136
 
139
- modal.find('input').attr('value',title);
137
+ modal.find('input').val(title);//valを使う事にに問題があると思いますがどうすればいいのか分かっていません
140
138
 
141
- modal.find('form').attr('action',url);//ここのurlの値の渡し方に問題があるのでしょうか?
139
+ modal.find('form').attr('action',url);
142
140
 
143
141
  });
144
142
 
@@ -152,8 +150,18 @@
152
150
 
153
151
  ##やってみたこと
154
152
 
155
- - これの他にもModalとJSを同じファイル上で使っているため、上記以外コメントアウトしてみましたが更新ボタン押しても編集されませんでした。
153
+ これの他にもModalとjQueryを同じファイル上で使っているため、上記以外コメントアウトしてみましたが更新ボタン押しても編集されませんでした。
156
154
 
157
155
 
158
156
 
159
- - 編集ボタン部分のdata-urlJSmodal.find('form').attr('action',url);を消して、action = {{ route('update.folder',['id' => $folder->id, 'user_id' => $user]) }} と入れてみましたが更新されませんでした。
157
+ 編集ボタン部分の```data-url```jQuery```modal.find('form').attr('action',url);```を消して、```action = {{ route('update.folder',['id' => $folder->id, 'user_id' => $user]) }} ```と入れてみましたが更新されませんでした。
158
+
159
+
160
+
161
+ ・ ```modal.find('input').val(title);```を```modal.find('input').attr('defaultValue',title);```に変えてやってみましたが、input内に値表示がされなくなってしまいます。
162
+
163
+
164
+
165
+ ・ jQueryで渡すのをやめてinputタグのvalueに直で記載して編集はできたのですが、値表示がうまくいきませんでした。
166
+
167
+ 上手くいかなかったというのは、id=1にもid=2のデータに対しても全てfolder1が表示されてしまいます。

3

やってみたことの追記とJS部分修正しました

2021/11/17 12:10

投稿

meiyin
meiyin

スコア1

test CHANGED
File without changes
test CHANGED
@@ -118,7 +118,7 @@
118
118
 
119
119
  ```
120
120
 
121
- <script>
121
+ <script type="application/javascript">
122
122
 
123
123
  window.addEventListener('load', function() {
124
124
 
@@ -152,4 +152,8 @@
152
152
 
153
153
  ##やってみたこと
154
154
 
155
- これの他にもModalとJSを同じファイル上で使っているため、上記以外コメントアウトしてみましたが更新ボタン押しても編集されませんでした。
155
+ - これの他にもModalとJSを同じファイル上で使っているため、上記以外コメントアウトしてみましたが更新ボタン押しても編集されませんでした。
156
+
157
+
158
+
159
+ - 編集ボタン部分の「data-url」とJSの「modal.find('form').attr('action',url);」を消して、「action = {{ route('update.folder',['id' => $folder->id, 'user_id' => $user]) }} 」と入れてみましたが更新されませんでした。

2

route部分を追加しました

2021/11/16 05:09

投稿

meiyin
meiyin

スコア1

test CHANGED
File without changes
test CHANGED
@@ -13,6 +13,16 @@
13
13
  以下Modal部分の写真です。
14
14
 
15
15
  ![Modal部分の写真です](d3e00aa9ed8f87fc733eab9ac6477329.png)
16
+
17
+
18
+
19
+ ##Route部分
20
+
21
+ ```
22
+
23
+ Route::post('/home/folder/update', 'HomeController@UpdateFolder')->name('update.folder');
24
+
25
+ ```
16
26
 
17
27
 
18
28
 

1

問題点が少し変わった為、問題と題名を修正しました。

2021/11/16 05:04

投稿

meiyin
meiyin

スコア1

test CHANGED
@@ -1 +1 @@
1
- Laravel:JavaScriptからModalのaction属性に値を渡せない
1
+ Laravel:JavaScriptからModalに値を渡せているのに編集ができない
test CHANGED
@@ -1,10 +1,14 @@
1
1
  ##問題
2
2
 
3
- 編集機能部分をModalで実装しましたが、なぜかaction属性URLが渡せません。
3
+ 編集機能部分をModalで実装しましたが、なぜかJSから渡したい値はModalに渡せているのに編集ができません。
4
4
 
5
- 更新ボタンを押してもリロードされる動作はあります、Controllerに行っていないのでURLが渡せていない思ってい
5
+ が渡せているこは検証上で確認しした
6
6
 
7
+ 更新ボタンを押してもリロードされる動作はありますが、編集はされずControllerでddメソッドを使って確認しましたが表示されなかった為Controllerに行き届いていません。
8
+
7
- なぜ渡せないのか原因を知りたいです。
9
+ 何が原因を知りたいです。
10
+
11
+
8
12
 
9
13
  以下Modal部分の写真です。
10
14
 
@@ -16,7 +20,7 @@
16
20
 
17
21
  編集ボタンを押したらModalが出ます。
18
22
 
19
- data-titleとdata-url追加しています。
23
+ data-titleとdata-urlがJSに渡したい値で追加しています。
20
24
 
21
25
  ```blade.php
22
26
 
@@ -34,7 +38,7 @@
34
38
 
35
39
 
36
40
 
37
- <form role="form" method="post" action=""> //ここのaction属性にdata-urlの値が渡せ
41
+ <form role="form" method="post" action=""> //ここのaction属性にdata-urlの値が渡せることは検証上で確認しました。
38
42
 
39
43
  @csrf
40
44
 
@@ -58,7 +62,7 @@
58
62
 
59
63
 
60
64
 
61
- <input type="text" class="form-control @error('title') is-invalid @enderror" name="title" value=""> //ここのvalue属性にはdata-titleの値が渡せている
65
+ <input type="text" class="form-control @error('title') is-invalid @enderror" name="title" value=""> //ここのvalue属性にはdata-titleの値が渡せている事も検証上で確認しました。
62
66
 
63
67
 
64
68
 
@@ -82,7 +86,7 @@
82
86
 
83
87
 
84
88
 
85
-                                          //ここの更新ボタンを押すとリロードする動作はあるが、Controllerには行ってない
89
+                                          //ここの更新ボタンを押すとリロードする動作はあるが、Controllerには行ってないです。
86
90
 
87
91
  <button type="submit" class="btn btn-outline-light">更新</button>
88
92
 
@@ -124,7 +128,7 @@
124
128
 
125
129
  modal.find('input').attr('value',title);
126
130
 
127
- modal.find('form').attr('action',url);//ここのurlの値がmodalに渡せていない
131
+ modal.find('form').attr('action',url);//ここのurlの値の渡し方に問題あるのでしょうか?
128
132
 
129
133
  });
130
134