質問編集履歴

1

不要な説明を削除

2023/03/29 10:08

投稿

user-name1
user-name1

スコア13

test CHANGED
@@ -1 +1 @@
1
- バリデーションチェックエラー後の再描画処理時選択していたセレクトボックスの情報を保持したままリダイレクトしたい
1
+ バリデーションチェックエラー後にセレクトボックスの情報を保持したままリダイレクトしたい
test CHANGED
@@ -1,18 +1,12 @@
1
- ### 前提条件
1
+ ### 実現したいこと(具体的な例)
2
- 個人でLaravelを使用し、団体用健康管理アプーションを作成
2
+ 以下ようなバーションで再描画
3
- 以下はチーム管理者が使用するエクスポート画面で、自チームメンバーの入力情報をエクスポートする画面になります
4
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-28/5f4fbc85-24e7-4e71-b579-ab7c7a829118.png)
3
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-28/2fcf05f2-ec18-464c-b66a-d206f40efe17.png)
5
4
 
5
+ ### 現状
6
+ ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-29/75d53d9a-c28e-4d95-b7dc-7eb3f7641e12.png)
6
7
 
8
+ →「Name」のセレクトボックスの値がクリアされる
7
- 必須項目は団体名「開始日」「終了日」で選択した団体名に紐づく選手名のリストAjaxで取得ています。
9
+ Team」で選択したに紐づくNameajaxで作成設定
8
- 現在問題となっているのは、「開始日」または「終了日」を入力しなかった場合の必須チェックのバリデーションチェックで、再描画された際の処理は選手プルダウンの値がクリアされ、非活性状態になります。
9
- ※以下画像参照
10
-
11
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-28/c978afcb-c7e0-4d40-82b8-45ad8a7f4742.png)
12
-
13
-
14
-
15
-
16
10
 
17
11
  ### 該当のソースコード
18
12
 
@@ -31,29 +25,10 @@
31
25
 
32
26
  //以下でエクスポート本処理(省略)
33
27
  }
34
-
35
- protected function validation($request)
36
- {
37
- $rules = [
38
- 'team_id' => 'required',
39
- 'start_date' => 'required',
40
- 'end_date' => 'required',
41
- ];
42
-
43
- $messages = [
44
- 'team_id.required' => 'チーム名を選択してください',
45
- 'start_date.required' => '開始日を選択してください',
46
- 'end_date.required' => '終了日を選択してください',
47
- ];
48
-
49
- return Validator::make($request->all(), $rules, $messages);
50
- }
51
28
  }
52
29
  ```
53
-
54
- チームに紐づく選手名を取得する非同期処理
55
30
  ```javascript
56
- $.ajax({
31
+ $.ajax({
57
32
  url: "/dashboard/exportajax",
58
33
  type: "POST",
59
34
  data: {
@@ -64,6 +39,7 @@
64
39
  .done(function (data) {
65
40
  $("#namePullDownList option").remove();
66
41
 
42
+ // 初期表示時(select...)の場合
67
43
  if (data == 0) {
68
44
  $("#namePullDownList").prop("disabled", true);
69
45
  $("#namePullDownList").append(
@@ -86,14 +62,7 @@
86
62
  .fail(function () {
87
63
  console.log("NG");
88
64
  });
89
-
90
-
91
65
  ```
92
-
93
- ### 実現したいこと(具体的な例)
94
- 以下のようなバリデーションで再描画したいです
95
- ![イメージ説明](https://ddjkaamml8q8x.cloudfront.net/questions/2023-03-28/2fcf05f2-ec18-464c-b66a-d206f40efe17.png)
96
-
97
66
 
98
67
 
99
68
  ### 補足情報