teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

回答でいただいたコードをもとに変更

2021/02/16 01:50

投稿

hafmk
hafmk

スコア9

title CHANGED
File without changes
body CHANGED
@@ -52,4 +52,69 @@
52
52
  .sentakuclick:focus {
53
53
  background: rgba(213, 225, 241, 0.71);
54
54
  }
55
- ```
55
+ ```
56
+
57
+ ### いただいた回答をもとに追記
58
+
59
+ HTML
60
+ ```ここに言語を入力
61
+ <!-- 前画面で取得した値をv-forで一覧表示 -->
62
+ <div v-for="object in data.loginListData"
63
+ :key="object.kigyocode"
64
+ :class="{focused: isSelected(selectData)}"<!-- ←追記箇所 -->
65
+ >
66
+
67
+ <button
68
+ class=" form-control w-300px h-55px d-block border-1px-blue-004BB1 pl-4 pr-4 radius-5px f-12px text-black-0D0D0D mb-3 input_radio_toggle2 "
69
+ @focus="isFocus(object)"
70
+ >{{ object.kigyomei}}</button>
71
+ </div>
72
+
73
+ <!-- ボタン-->
74
+ <button
75
+ class="btn w-150px h-28px text-center rounded-pill f-12px text-white bg-blue-013440 mx-auto d-block"
76
+ @click="kigyousentakuClick()">
77
+ すすむ
78
+ </button>
79
+ ```
80
+
81
+ css
82
+
83
+ ```ここに言語を入力
84
+ .focused {
85
+
86
+ background: rgba(213, 225, 241, 0.71);
87
+ }
88
+ ```
89
+ JavaScript
90
+ ```ここに言語を入力
91
+ //(追記箇所)オブジェクトが選択されているときだけクラスを付与する
92
+ isSelected(object) {
93
+ const selectedObject = JSON.stringify(this.selectData) // 選択中のオブジェクト
94
+ return object.kigyocode === selectedObject.kigyocode // 選択中のものと渡されたものIDが等しいならばtrueを返す
95
+
96
+ //選択したデータ取得
97
+ isFocus(object){
98
+
99
+ this.selectData.eigyoshocode = object.daihyoeigyoshocode;
100
+ this.selectData.kigyocode = object.kigyocode;
101
+
102
+
103
+ },
104
+ ```
105
+
106
+ ### 詰まっているところ
107
+
108
+ うまくtrueが返っていないのか、cssのclassが適用されません。
109
+ > data.loginListDataのobjectが、何らかのidを持っている必要があります(でないと各objectが識別できないため)
110
+ > なのでuserIdというプロパティを持っているとして話を進めます。
111
+ こちらでご教示いただいたuserIdは、kigyocodeが該当すると認識しているため書き換えています。
112
+ ![イメージ説明](af4e2acd7e7f3bb55fc21e7009aab6ec.png)
113
+
114
+ 検証ツールで試したところ、
115
+ > return object.kigyocode === selectedObject.kigyocode
116
+ object.kigyocodeとselectedObjectには同じkigyocodeの値が入っているようには見えますが、
117
+ electedObject.**kigyocode **のkigyokodeの中身は「undefind」でした。
118
+ ![イメージ説明](5b5d5431ab22f028c8fcf8bc0e768dfd.png)
119
+
120
+ 何かコードが違っているのでしょうか。ご教示いただければ幸いです。