質問編集履歴
4
問題を修正しました
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Laravel:
|
1
|
+
Laravel:jQueryからModalに値を渡せているのに編集ができない
|
test
CHANGED
@@ -1,12 +1,18 @@
|
|
1
1
|
##問題
|
2
2
|
|
3
|
-
編集機能部分を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が
|
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
|
-
##
|
115
|
+
##jQuery部分
|
118
116
|
|
119
117
|
```
|
120
118
|
|
@@ -136,9 +134,9 @@
|
|
136
134
|
|
137
135
|
//Ajaxの処理はここに
|
138
136
|
|
139
|
-
modal.find('input').
|
137
|
+
modal.find('input').val(title);//valを使う事にに問題があると思いますがどうすればいいのか分かっていません
|
140
138
|
|
141
|
-
modal.find('form').attr('action',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
|
-
|
153
|
+
・ これの他にもModalとjQueryを同じファイル上で使っているため、上記以外コメントアウトしてみましたが更新ボタン押しても編集されませんでした。
|
156
154
|
|
157
155
|
|
158
156
|
|
159
|
-
|
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部分修正しました
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部分を追加しました
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
問題点が少し変わった為、問題と題名を修正しました。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Laravel:JavaScriptからModal
|
1
|
+
Laravel:JavaScriptからModalに値を渡せているのに編集ができない
|
test
CHANGED
@@ -1,10 +1,14 @@
|
|
1
1
|
##問題
|
2
2
|
|
3
|
-
編集機能部分をModalで実装しましたが、なぜかa
|
3
|
+
編集機能部分をModalで実装しましたが、なぜかJSから渡したい値はModalに渡せているのに編集ができません。
|
4
4
|
|
5
|
-
|
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の値が
|
131
|
+
modal.find('form').attr('action',url);//ここのurlの値の渡し方に問題があるのでしょうか?
|
128
132
|
|
129
133
|
});
|
130
134
|
|