質問編集履歴

1

誤字、タグ修正

2020/11/17 10:52

投稿

退会済みユーザー
test CHANGED
@@ -1 +1 @@
1
- 【PHP、AugularJS】想定する値が画面にセットできない。
1
+ 【PHP】想定する値が
test CHANGED
@@ -1,14 +1,8 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- 以下2パターンにおいて、編集画面の特定項目(AAAA項目とします)に想定する値をセットしたい。
3
+ 編集画面の特定項目(AAAA項目とします)に想定する値をセットしたい。
4
4
 
5
- ```
6
5
 
7
- ①参照画面→編集画面
8
-
9
- ②編集画面→子画面→編集画面
10
-
11
- ```
12
6
 
13
7
 
14
8
 
@@ -16,319 +10,23 @@
16
10
 
17
11
  編集画面における特定の項目(AAAA項目)に想定する値がにセットできない。
18
12
 
19
- 一方ができて、一方ができないという状況です。
13
+
20
14
 
21
15
 
22
16
 
23
17
  ### 該当のソースコード
24
18
 
19
+ ```JS
20
+
21
+ $scope.search= function() {
25
22
 
26
23
 
27
- ```HTML
28
-
29
- 参照画面
30
-
31
- ※編集ボタン押下で編集画面に遷移
32
-
33
-
34
-
35
- <div class="scrolling content">
36
-
37
- <table class="ui definition table">
38
-
39
- <thead></thead>
40
-
41
- <tbody>
42
-
43
- <tr>
44
-
45
- <td>職場氏名</td>
46
-
47
- <td>{{result.PERSON_NM}}</td>
48
-
49
- </tr>
50
-
51
- <tr>
52
-
53
- <td>所属</td>
54
-
55
- <!-- <td><span class="ui medium text" ng-bind="orgNm"></span></td> -->
56
-
57
- <td ng-bind="result.ORG_NM"></td>
58
-
59
- </tr>
60
-
61
- </tbody>
62
-
63
- </table>
64
-
65
- </div>
66
-
67
- <div class="actions">
68
-
69
- <div class="ui blue button" ng-click="fwd(6, personMstId)"> 編 集 </div>
70
-
71
- </div>
72
-
73
-
74
-
75
- ※fwdはパラメーターを渡して、fwdToでcontrollerを呼び出しています。
76
-
77
- ```
78
-
79
- ```HTML
80
-
81
- 編集画面
82
-
83
- ※選択ボタン押下で子画面に遷移
84
-
85
-
86
-
87
- <?php
88
-
89
- session_start();
90
-
91
- require_once(dirname(__FILE__) . "/../../../common/constant.php");
92
-
93
- $initData = $_POST[Constant::RESULT_OBJ_KEY_INIT];
94
-
95
- ?>
96
-
97
- <!DOCTYPE html>
98
-
99
- <html lang="ja" ng-app="XX">
100
-
101
- <head>
102
-
103
- <meta charset="utf-8">
104
-
105
- <script>
106
-
107
- var INIT_DATA = JSON.parse('<?php echo $initData; ?>');
108
-
109
- </script>
110
-
111
- </head>
112
-
113
- <body ng-controller="XX">
114
-
115
- <?php require_once(dirname(__FILE__) . "/../../../common/view/common.html"); ?>
116
-
117
- <?php require_once(dirname(__FILE__) . "/../../../common/view/header.html"); ?>
118
-
119
- <div class="ui main container">
120
-
121
- <div class="column">
122
-
123
- <form class="ui form main">
124
-
125
- <div class="required field">
126
-
127
- <label>職場氏名</label>
128
-
129
- <div class="two fields">
130
-
131
- <div class="field">
132
-
133
- <input type="text" name="personNmSei" id="personNmSei" maxlength="120">
134
-
135
- </div>
136
-
137
- <div class="field">
138
-
139
- <input type="text" name="personNmMei" id="personNmMei" maxlength="120">
140
-
141
- </div>
142
-
143
- </div>
144
-
145
- </div>
146
-
147
- <div class="required field">
148
-
149
- <label>AAAA</label>
150
-
151
- <div class="ui labeled button">
152
-
153
- <div class="ui button" ng-click="showSearchOrg()">選択</div>
154
-
155
- <input type="text" name="orgNm" id="orgNm" class="orgNm" ng-model="orgNm" readonly>
156
-
157
- <input type="text" name="orgId" id="orgId" ng-value="orgId" />
158
-
159
- <input type="text" name="companyId" id="companyId" ng-value="companyId" />
160
-
161
- </div>
162
-
163
- </div>
164
-
165
- <div class="div-button">
166
-
167
- <div class="ui small blue button" ng-click="regist()"><?php echo $mode == 0 ? " 登 録 " : " 次 へ " ?></div>
168
-
169
- <?php } ?>
170
-
171
- <div class="ui small blue button" ng-click="backBtnClick()"> 戻 る </div>
172
-
173
- </div>
174
-
175
- </form>
176
-
177
- </div>
178
-
179
- </div>
180
-
181
-
182
-
183
- ■■■■■■■■同HTMLですが、以下子画面の処理です(上部ng-click="showSearchOrg()で呼び出し)■■■■■■■■
184
-
185
- ※ng-click="selectOrgで画面戻し
186
-
187
-
188
-
189
- <div class="ui modal org">
190
-
191
- <i class="close icon"></i>
192
-
193
- <div class="header">配属先選択</div>
194
-
195
- <div class="content">
196
-
197
- <form class="ui form">
198
-
199
- <div class="field">
200
-
201
- <div class="two fields">
202
-
203
- <div class="field">
204
-
205
- <label>会社</label>
206
-
207
- <div class="ui selection dropdown standard searchOrgId">
208
-
209
- <input type="hidden" name=searchOrgId />
210
-
211
- <i class="dropdown icon"></i>
212
-
213
- <div class="default text"></div>
214
-
215
- <div class="menu">
216
-
217
- <div class="item" ng-repeat="data in company" data-value="{{data.ORG_ID}}">{{data.ORG_NM}}</div>
218
-
219
- </div>
220
-
221
- </div>
222
-
223
- </div>
224
-
225
- <div class="field">
226
-
227
- <label>組織名</label>
228
-
229
- <input type="text" name="searcyOrgNm" ng-model="searcyOrgNm" maxlength="120">
230
-
231
- </div>
232
-
233
- </div>
234
-
235
- </div>
236
-
237
- <div class="div-button">
238
-
239
- <div class="ui small blue button" ng-click="searchOrg()"> 検 索 </div>
240
-
241
- </div>
242
-
243
- </form>
244
-
245
- <div class="ui header">検索結果</div>
246
-
247
- </div>
248
-
249
- <div class="scrolling content">
250
-
251
- <table class="ui selectable celled table">
252
-
253
- <thead>
254
-
255
- <tr>
256
-
257
- <th>組織ID</th>
258
-
259
- <th>組織名</th>
260
-
261
- </tr>
262
-
263
- </thead>
264
-
265
- <tbody>
266
-
267
- <tr ng-repeat="data in org" ng-click="selectOrg(data.ORG_ID, data.ORG_NM, data.COMPANY_ID)">
268
-
269
- <td><a href="#">{{data.ORG_ID}}</a></td>
270
-
271
- <td><a href="#">{{data.ORG_NM}}</a></td>
272
-
273
- </tr>
274
-
275
- </tbody>
276
-
277
- </table>
278
-
279
- </div>
280
-
281
- </div>
282
-
283
- </body>
284
-
285
- </html>
286
-
287
- ```
288
-
289
- ```JS
290
-
291
- $scope.searchOrg = function() {
292
-
293
- post("SEARCH_ORG", function(result) {
294
-
295
- if ("00" == result.RESULT_CD) {
296
-
297
- $scope.org = result.ORG_ARY;
298
-
299
- $scope.$apply();
300
-
301
- } else if ("99" == result.RESULT_CD) {
302
-
303
- showErrorDialog(result.ERROR_MSG, null);
304
-
305
- }
306
-
307
- return result;
308
-
309
- });
310
24
 
311
25
  }
312
26
 
313
27
 
314
28
 
315
- $scope.selectOrg = function(orgId, orgNm, companyId) {
316
29
 
317
- $scope.orgId = orgId;
318
-
319
- $scope.orgNm = orgNm;
320
-
321
- $scope.companyId = companyId;
322
-
323
- $(".ui.modal.org").modal('hide');
324
-
325
- setTimeout(function() {
326
-
327
- $(".ui.form.main").form("validate field", "orgNm");
328
-
329
- }, 300);
330
-
331
- }
332
30
 
333
31
  ```
334
32
 
@@ -337,35 +35,3 @@
337
35
  ### 試したこと
338
36
 
339
37
  該当はAAAAという項目の部分です。
340
-
341
- 現状だと、①参照画面→編集画面へ遷移時に、AAAAへ値がセットされません。
342
-
343
- ②編集画面→子画面→編集画面の処理を行った際、選択した値がAAAAへ値がセットされます。
344
-
345
- また以下のように変更する。
346
-
347
-
348
-
349
- 変更前
350
-
351
- ```ここに言語を入力
352
-
353
- <input type="text" name="orgNm" id="orgNm" class="orgNm" ng-model="orgNm" readonly>
354
-
355
- ```
356
-
357
- 変更後
358
-
359
- ```
360
-
361
- <input type="text" name="orgNm" id="orgNm" class="orgNm" ng-value="orgNm" readonly>
362
-
363
- ```
364
-
365
- すると、①参照画面→編集画面へ遷移時に、AAAAへ値がセットされますが、②編集画面→子画面→編集画面の処理を行った際、AAAAへ値がセットされません。(①参照画面→編集画面へ遷移時の値のままです)
366
-
367
-
368
-
369
- ng-valueの他、ng-bindやng-initも使ってみましたが、うまくいきませんでした。
370
-
371
- ご助言お願いします。