質問編集履歴

3

あげてはいけない画像をあげてしまったため

2017/06/09 03:23

投稿

rms398
rms398

スコア50

test CHANGED
File without changes
test CHANGED
@@ -4,13 +4,7 @@
4
4
 
5
5
  画像はimgフォルダの画像が参照され画像の数だけチェックボックスと画像が表示されます。
6
6
 
7
- チェックしたあとに削除ボタンを押すと画像が削除され、javascriptで更新するのですが、htmlのほうが更新されていない(?)状態(下記の画像の状態)になります
7
+ チェックしたあとに削除ボタンを押すと画像が削除され、javascriptで更新するのですが、htmlのほうが更新されていない(?)状態になります
8
-
9
-
10
-
11
- ![消したい画像をチェックして削除を試みるのですが・・・](0471cb94739b785d29ad6ee17c97ee1d.png)
12
-
13
- ![htmlだけ消した画像がまだあると判断してしまう](bb156ad59d53e67d81e7a2b5e06c1632.png)
14
8
 
15
9
  #該当のソースコード
16
10
 

2

javascriptの書き忘れ

2017/06/09 03:23

投稿

rms398
rms398

スコア50

test CHANGED
File without changes
test CHANGED
@@ -111,3 +111,155 @@
111
111
 
112
112
 
113
113
  ```
114
+
115
+ ```javascript
116
+
117
+ $(function(){
118
+
119
+ //フォームデータを一時保存する配列
120
+
121
+ var formDataArray = []
122
+
123
+ //クリックした時にデータ送信
124
+
125
+ $('#delete').on('click',function(){
126
+
127
+ //チェックボックス
128
+
129
+ var im = document.forms.fm.Checkbox;
130
+
131
+ var cnt = 0;
132
+
133
+ // Array オブジェクトを作成する
134
+
135
+ var img_id = new Array();
136
+
137
+ //チェックボックスの数だけ繰り返す
138
+
139
+ for(var i = 0; i < im.length; i++){
140
+
141
+ //チェックボックスにチェックがついてるか
142
+
143
+ console.log(im[i]);
144
+
145
+ console.log(im[i].checked);
146
+
147
+ if(im[i].checked){
148
+
149
+ //チェックボックスのvalue(imgのidが入っている)をimg_idにプッシュ
150
+
151
+ console.log(im[i].value);
152
+
153
+ img_id.push(im[i].value);
154
+
155
+ //チェックついてる数を数える
156
+
157
+ cnt++;
158
+
159
+ }
160
+
161
+ }
162
+
163
+ //チェックついてる数だけ繰り返す
164
+
165
+ console.log(cnt);
166
+
167
+ for(var i = 0; i < cnt; i++){
168
+
169
+ var formData = new FormData();
170
+
171
+ console.log(img_id[i]);
172
+
173
+ var id = img_id[i];
174
+
175
+ console.log(document.getElementById(img_id[i]));
176
+
177
+ //チェックのついている画像のソースをformDataにappend
178
+
179
+ formData.append('path',document.getElementById(img_id[i]).getAttribute("src"));
180
+
181
+ //formDataをArrayにpush
182
+
183
+ formDataArray.push(formData);
184
+
185
+ }
186
+
187
+ //入ってる配列を繰り返す
188
+
189
+ formDataArray.forEach(function(formData){
190
+
191
+ //画像のsrcが入っているか確認
192
+
193
+ console.log(formData.get("path"));
194
+
195
+ //ajaxで送る
196
+
197
+ deleteFiles(formData);
198
+
199
+ });
200
+
201
+ location.reload(true);//更新する処理
202
+
203
+ });
204
+
205
+ var deleteFiles = function(formData){
206
+
207
+ //ajaxで送信
208
+
209
+ $.ajax({
210
+
211
+ //POSTで送信
212
+
213
+ type: 'POST',
214
+
215
+ //ajaxが適切なcontentTypeに自動変換するのを防ぐ
216
+
217
+ contentType: false,
218
+
219
+ //データを文字列に自動変換するのを防ぐ
220
+
221
+ processData: false,
222
+
223
+ //送信先
224
+
225
+ url: './delete.php',
226
+
227
+ //送るデータ
228
+
229
+ data: formData,
230
+
231
+ //通信成功時に呼ばれる
232
+
233
+ //data 接続先PHPファイルが出力したデータ
234
+
235
+ success: function(data,dataType) {
236
+
237
+ console.log("成功" +data);
238
+
239
+ },
240
+
241
+ //通信失敗時に呼ばれる
242
+
243
+ //XMLHttpRequest.status HTTPステータス
244
+
245
+ //textStatus timeout、error、parsererror等の文字列
246
+
247
+ //errorThrown 例外情報
248
+
249
+ error: function(XMLHttpRequest, textStatus, errorThrown){
250
+
251
+ console.log(XMLHttpRequest + " : " + textStatus + " : " + errorThrown);
252
+
253
+ }
254
+
255
+ });
256
+
257
+
258
+
259
+ }
260
+
261
+
262
+
263
+ });
264
+
265
+ ```

1

イメージ説明をつけた

2017/05/23 05:10

投稿

rms398
rms398

スコア50

test CHANGED
File without changes
test CHANGED
@@ -8,9 +8,9 @@
8
8
 
9
9
 
10
10
 
11
- ![イメージ説明](0471cb94739b785d29ad6ee17c97ee1d.png)
11
+ ![消したい画像をチェックして削除を試みるのですが・・・](0471cb94739b785d29ad6ee17c97ee1d.png)
12
12
 
13
- ![イメージ説明](bb156ad59d53e67d81e7a2b5e06c1632.png)
13
+ ![htmlだけ消した画像がまだあると判断してしまう](bb156ad59d53e67d81e7a2b5e06c1632.png)
14
14
 
15
15
  #該当のソースコード
16
16