質問編集履歴
5
誤字修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -140,7 +140,7 @@
|
|
140
140
|
use Cake\Error\Debugger;
|
141
141
|
use App\Controller\AppController;
|
142
142
|
|
143
|
-
class
|
143
|
+
class TestController extends AppController
|
144
144
|
{
|
145
145
|
public function index(...$path)
|
146
146
|
{
|
4
現状追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -10,8 +10,10 @@
|
|
10
10
|
根本的に記述の仕方が間違っているのでしょうか?
|
11
11
|
|
12
12
|
アドバイス等よろしくお願いします。
|
13
|
-
|
13
|
+
JavaScript
|
14
|
+
---
|
14
15
|
```javascript
|
16
|
+
// test.js
|
15
17
|
/* 初期処理 */
|
16
18
|
function imgReadDep() {
|
17
19
|
document.getElementById("filReadDep").value = "";
|
@@ -84,13 +86,32 @@
|
|
84
86
|
```
|
85
87
|
|
86
88
|
追記:
|
89
|
+
記載できていませんでしたが、cakephp3を使用しており、
|
90
|
+
post後にcontrollerの処理を行うような仕様となっています。
|
91
|
+
|
87
92
|
現状としては処理1が行われた後で「処理1を実行してよろしいですか?」のダイアログが表示され、
|
88
93
|
キャンセルを押すとそのまま処理が終了します。
|
89
94
|
OKを押すと処理2が実行され「処理2の処理は正常に終了しました。」が2回表示されます。
|
90
95
|
表示だけではなく実際に処理2も2階行われており、データも2件登録されている状態となっています。
|
91
96
|
|
92
|
-
|
97
|
+
PGは以下のような記述をしています。
|
98
|
+
ctp
|
99
|
+
---
|
93
100
|
```PHP
|
101
|
+
<?php
|
102
|
+
// index.ctp
|
103
|
+
<html>
|
104
|
+
<head>
|
105
|
+
<meta charset="utf-8">
|
106
|
+
<link rel="stylesheet" href="/test/css/jquery-ui.css">
|
107
|
+
<script src="/test/js/jquery-3.2.1.js"></script>
|
108
|
+
<script src="/test/js/jquery-ui.js"></script>
|
109
|
+
<link rel="stylesheet" href="/test/css/style.css">
|
110
|
+
<link rel="stylesheet" href="/test/css/test.css">
|
111
|
+
<script src="/test/js/common.js"></script>
|
112
|
+
<script src="/test/js/test.js"></script>
|
113
|
+
</head>
|
114
|
+
<body>
|
94
115
|
<span id="check-csv-url" class="DisplayNone">
|
95
116
|
<?= $this->Url->build(['action' => 'checkCsv']) ?>
|
96
117
|
</span>
|
@@ -103,4 +124,66 @@
|
|
103
124
|
<button class="btnMa mt5px" onClick="imgReadDep()"><?= $this->Html->image("buttons.png")?></button>
|
104
125
|
<?= $this->Form->end(); ?>
|
105
126
|
<input type="hidden" id="hidReadDep" value="dep">
|
127
|
+
</body>
|
128
|
+
</html>
|
129
|
+
```
|
130
|
+
controller
|
131
|
+
---
|
132
|
+
```PHP
|
133
|
+
<?php
|
134
|
+
|
135
|
+
namespace App\Controller;
|
136
|
+
|
137
|
+
use Cake\Core\Configure;
|
138
|
+
use Cake\ORM\TableRegistry;
|
139
|
+
use Cake\Event\Event;
|
140
|
+
use Cake\Error\Debugger;
|
141
|
+
use App\Controller\AppController;
|
142
|
+
|
143
|
+
class MenuController extends AppController
|
144
|
+
{
|
145
|
+
public function index(...$path)
|
146
|
+
{
|
147
|
+
}
|
148
|
+
|
149
|
+
/*
|
150
|
+
* CSV内容チェック
|
151
|
+
*/
|
152
|
+
public function checkCsv(...$path)
|
153
|
+
{
|
154
|
+
$result = [
|
155
|
+
"check" => false,
|
156
|
+
"result" => false,
|
157
|
+
"message" => ""
|
158
|
+
];
|
159
|
+
|
160
|
+
// 処理
|
161
|
+
// 処理に成功した場合に
|
162
|
+
// $result['check'] = true;
|
163
|
+
$this->autoRender = false;
|
164
|
+
echo json_encode($result);
|
165
|
+
}
|
166
|
+
|
167
|
+
public function index(...$path)
|
168
|
+
{
|
169
|
+
}
|
170
|
+
|
171
|
+
/*
|
172
|
+
* CSV内容登録
|
173
|
+
*/
|
174
|
+
public function readDepRegist(...$path)
|
175
|
+
{
|
176
|
+
$result = [
|
177
|
+
"check" => false,
|
178
|
+
"result" => false,
|
179
|
+
"message" => ""
|
180
|
+
];
|
181
|
+
|
182
|
+
// 処理
|
183
|
+
// 処理に成功した場合に
|
184
|
+
// $result['check'] = true;
|
185
|
+
$this->autoRender = false;
|
186
|
+
echo json_encode($result);
|
187
|
+
}
|
188
|
+
}
|
106
189
|
```
|
3
HTML部の追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,6 +13,10 @@
|
|
13
13
|
|
14
14
|
```javascript
|
15
15
|
/* 初期処理 */
|
16
|
+
function imgReadDep() {
|
17
|
+
document.getElementById("filReadDep").value = "";
|
18
|
+
document.getElementById("filReadDep").click();
|
19
|
+
}
|
16
20
|
function chgReadDep() {
|
17
21
|
var fd = new FormData();
|
18
22
|
if ($("input[name='filReadDep']").val() !== '') {
|
@@ -83,4 +87,20 @@
|
|
83
87
|
現状としては処理1が行われた後で「処理1を実行してよろしいですか?」のダイアログが表示され、
|
84
88
|
キャンセルを押すとそのまま処理が終了します。
|
85
89
|
OKを押すと処理2が実行され「処理2の処理は正常に終了しました。」が2回表示されます。
|
86
|
-
表示だけではなく実際に処理2も2階行われており、データも2件登録されている状態となっています。
|
90
|
+
表示だけではなく実際に処理2も2階行われており、データも2件登録されている状態となっています。
|
91
|
+
|
92
|
+
HTML部では以下のような記述をしています。
|
93
|
+
```PHP
|
94
|
+
<span id="check-csv-url" class="DisplayNone">
|
95
|
+
<?= $this->Url->build(['action' => 'checkCsv']) ?>
|
96
|
+
</span>
|
97
|
+
<span id="regit-dep-csv-url" class="DisplayNone">
|
98
|
+
<?= $this->Url->build(['action' => 'regitDepCsv']) ?>
|
99
|
+
</span>
|
100
|
+
|
101
|
+
<?=$this->Form->create(null, ['type' => 'file','url' => ['action' => 'check_csv'],'onsubmit' => 'return false;', 'name' =>'frmReadDep', 'id' =>'frmReadDep', 'enctype' => 'multipart/form-data' ])?>
|
102
|
+
<input id="filReadDep" name="filReadDep" type="file" value="" onChange="chgReadDep()" class="DisplayNone" />
|
103
|
+
<button class="btnMa mt5px" onClick="imgReadDep()"><?= $this->Html->image("buttons.png")?></button>
|
104
|
+
<?= $this->Form->end(); ?>
|
105
|
+
<input type="hidden" id="hidReadDep" value="dep">
|
106
|
+
```
|
2
現象について追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -5,6 +5,7 @@
|
|
5
5
|
|
6
6
|
処理自体は行えるのですが、どうやら処理2が2回処理されてしまっているようです。
|
7
7
|
|
8
|
+
|
8
9
|
下記のように記述しているのですがどこを変更したら良いのでしょうか?
|
9
10
|
根本的に記述の仕方が間違っているのでしょうか?
|
10
11
|
|
@@ -76,4 +77,10 @@
|
|
76
77
|
}).always(function(data) {
|
77
78
|
});
|
78
79
|
}
|
79
|
-
```
|
80
|
+
```
|
81
|
+
|
82
|
+
追記:
|
83
|
+
現状としては処理1が行われた後で「処理1を実行してよろしいですか?」のダイアログが表示され、
|
84
|
+
キャンセルを押すとそのまま処理が終了します。
|
85
|
+
OKを押すと処理2が実行され「処理2の処理は正常に終了しました。」が2回表示されます。
|
86
|
+
表示だけではなく実際に処理2も2階行われており、データも2件登録されている状態となっています。
|
1
「”」の記入漏れ修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -34,7 +34,7 @@
|
|
34
34
|
function readCsvCheckAjax(postData) {
|
35
35
|
$.ajax(postData).done(function(data) {
|
36
36
|
if (data.check) {
|
37
|
-
if (!window.confirm(処理1を実行してよろしいですか?")) {
|
37
|
+
if (!window.confirm("処理1を実行してよろしいですか?")) {
|
38
38
|
alert("実行しませんでした");
|
39
39
|
return;
|
40
40
|
}
|