jQueryのsuccessの部分がalertされません。
datatype jsonとすると、successのalertがうまく作動しません。
もちろんアップデートもできておりません。
重要なprocessDataとcontentTypeのfalseはやっているのですが。
APIのバグでしょうか?
html
1<form id="content" action=""> 2 <input type="file" name="hogeFile"> 3 <input type="submit" value="send"> 4</form>
javascript
1$("#content").on("change", 'input[type="file"]', function(e){ 2 e.preventDefault(); 3 var formData = new FormData(); 4 var files = this.files; 5 $.each(files, function(i, file){ 6 formData.append('file', file); 7 }); 8 $.ajax({ 9 url: '/api_register.php', 10 type: 'post', 11 data: formData, 12 processData: false, 13 contentType: false, 14 dataType: 'json', 15 success: function(data) { 16 alert('成功'); 17 console.log(data.comment); 18 alert(data.comment); 19 }, 20 complete: function(data){ 21 alert('完了'); 22 console.log(data.comment); 23 alert(data.comment); 24 } 25 }); 26 });
受け取るAPI
php
1if ($_POST) { 2 echo json_encode(array('comment'=>$_FILES["hogeFile"])); 3 move_uploaded_file($_FILES["hogeFile"]["tmp_name"], ROOT . "/assets/img/user/" . $_FILES["hogeFile"]["name"]);//画像を保存。 4}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。