回答編集履歴

7

Laravelドキュメントのルートパラメータの項へのリンクを追記しました。

2021/03/13 05:14

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -14,9 +14,7 @@
14
14
 
15
15
  $.ajax関数へ渡す引数は、
16
16
 
17
- urlの値はシングルクォートではなくバッククォートで囲む必要があります。シングルクォートだと`${store_id}`等の部分が展開されないはずです。あるいは以下のように`+`で連結しましょう。
17
+ urlの値はシングルクォートではなくバッククォートで囲む必要があります。シングルクォートだと`${store_id}`等の部分が展開されないからです。あるいは以下のように`+`で連結しましょう。
18
-
19
- urlの中にそれらの値が正しく展開されれば、data: $.param({ ... }) で値を渡す必要もありません。urlに含まれるそれらの値を、addToCastアクションの引数で受け取れるはずです。
20
18
 
21
19
 
22
20
 
@@ -31,3 +29,11 @@
31
29
  }).done(function(data) {
32
30
 
33
31
  ```
32
+
33
+
34
+
35
+ urlの中にそれらの値が正しく展開されれば、data: $.param({ ... }) で値を渡す必要もありません。urlに含まれるそれらの値(ルートパラメータ)は、addToCastアクションの引数で受け取れるからです。
36
+
37
+
38
+
39
+ 参考: [ルートパラメータ](https://readouble.com/laravel/8.x/ja/routing.html#route-parameters)

6

download_coupon_click呼出し箇所のコードが掲載されましたので、推測したコードを削除しました。

2021/03/13 05:14

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -1,26 +1,4 @@
1
- Bladeのコードが掲載されていないので推測になりますが
2
-
3
- download_coupon_click関数は、例えば以下のような感じで呼ばれるということでしょうか?
4
-
5
-
6
-
7
- ```html
8
-
9
- <input
10
-
11
- type="button"
12
-
13
- value="クーポンをダウンロード"
14
-
15
- onclick="download_coupon_click(this, {{ $store->id }}, {{ $coupon->id }})"
16
-
17
- >
18
-
19
- ```
20
-
21
-
22
-
23
- その場合、download_coupon_click関数は、引数でstore_id, coupon_idを受け取れていると思いますが、それらの値を下記2行で上書きしてしまっているのが原因ではないでしょうか。下記2行を削除してみるとどうでしょうか。
1
+ download_coupon_click関数は、引数でstore_id, coupon_idを受け取れていると思いますが、それらの値を下記2行で上書きしてしまっているのが原因ではないでしょうか。下記2行を削除してみるとどうでしょうか。
24
2
 
25
3
 
26
4
 

5

文章の軽微な改善です。

2021/03/13 04:47

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -38,7 +38,7 @@
38
38
 
39
39
  urlの値はシングルクォートではなくバッククォートで囲む必要があります。シングルクォートだと`${store_id}`等の部分が展開されないはずです。あるいは以下のように`+`で連結しましょう。
40
40
 
41
- urlの中にそれらの値が正しく展開されれば、dataで値を渡す必要も無いはずです。urlに含まれるそれらの値を、addToCastアクションの引数で受け取れるはずです。
41
+ urlの中にそれらの値が正しく展開されれば、data: $.param({ ... }) で値を渡す必要もありません。urlに含まれるそれらの値を、addToCastアクションの引数で受け取れるはずです。
42
42
 
43
43
 
44
44
 

4

$.ajax関数へ渡す引数について追記しました。

2021/03/13 01:12

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -24,10 +24,32 @@
24
24
 
25
25
 
26
26
 
27
- ```html
27
+ ```js
28
28
 
29
29
  var store_id = $(this).data('store-id');
30
30
 
31
31
  var coupon_id = $(this).data('coupon-id');
32
32
 
33
33
  ```
34
+
35
+
36
+
37
+ $.ajax関数へ渡す引数は、
38
+
39
+ urlの値はシングルクォートではなくバッククォートで囲む必要があります。シングルクォートだと`${store_id}`等の部分が展開されないはずです。あるいは以下のように`+`で連結しましょう。
40
+
41
+ urlの中にそれらの値が正しく展開されれば、dataで値を渡す必要も無いはずです。urlに含まれるそれらの値を、addToCastアクションの引数で受け取れるはずです。
42
+
43
+
44
+
45
+ ```js
46
+
47
+ $.ajax({
48
+
49
+ 'url': '/realshop/' + store_id + '/coupon/' + coupon_id + '/fetch',
50
+
51
+ 'type': 'POST',
52
+
53
+ }).done(function(data) {
54
+
55
+ ```

3

推測が間違っていたのでBlade名を削除しました(勘違いでした)。

2021/03/13 01:08

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -1,4 +1,4 @@
1
- coupon_ok.blade.phpのコードが掲載されていないので推測になりますが
1
+ Bladeのコードが掲載されていないので推測になりますが
2
2
 
3
3
  download_coupon_click関数は、例えば以下のような感じで呼ばれるということでしょうか?
4
4
 

2

文章の軽微な改善です。

2021/03/13 00:25

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -1,4 +1,4 @@
1
- Bladeのコードが掲載されていないので推測になりますが
1
+ coupon_ok.blade.phpのコードが掲載されていないので推測になりますが
2
2
 
3
3
  download_coupon_click関数は、例えば以下のような感じで呼ばれるということでしょうか?
4
4
 
@@ -20,7 +20,7 @@
20
20
 
21
21
 
22
22
 
23
- その場合、download_coupon_click関数引数でstore_id, coupon_idを受け取れていると思いますが、それらの値を下記2行で上書きしてしまっているのが原因ではないでしょうか。下記2行を削除してみるとどうでしょうか。
23
+ その場合、download_coupon_click関数は、引数でstore_id, coupon_idを受け取れていると思いますが、それらの値を下記2行で上書きしてしまっているのが原因ではないでしょうか。下記2行を削除してみるとどうでしょうか。
24
24
 
25
25
 
26
26
 

1

推測したBladeのコードを変更しました。

2021/03/13 00:21

投稿

Lulucom
Lulucom

スコア1899

test CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  value="クーポンをダウンロード"
14
14
 
15
- onclick="download_coupon_click(this, 'STOREXXX', 'COUPONXXX')"
15
+ onclick="download_coupon_click(this, {{ $store->id }}, {{ $coupon->id }})"
16
16
 
17
17
  >
18
18