Я пытаюсь использовать FormData для отправки данных через AJAX в PHP-скрипт. Кажется, что нет никаких проблем с текстовыми значениями типа ввода, но когда я пытаюсь добавить файлы, я получаю ошибку TypeError: Value не реализует интерфейс FormData.Javascript: TypeError: значение не реализует интерфейс FormData
Я новичок в FormData, но я искал в Интернете и не смог найти какой-либо документ для этой ошибки.
Вот форма:
<form id="item_form" class="item_form" enctype="multipart/form-data">
<div class="">
<label for="emp_photos">photos</label>
<input id="emp_photos" class="inputText" type="file" value="" name="emp_photos">
</div>
</form>
вот Javascript:
var formData = new FormData();
formData.append('photos', $('#emp_photos').files[0]);
вот ошибка, я получаю в поджигатель:
TypeError: Value does not implement interface FormData.
...igger("ajaxComplete",[N,p]),--b.active||b.event.trigger("ajaxStop")))}return N},...
jquery....min.js (line 5)
Что я делаю неправильно здесь?
EDIT: Аякса часть
$.ajax({
type: 'POST',
url: '";
echo $_SESSION["url_base"];
echo "operations/add_employes',
data: formData,
xhr: function() { // custom xhr
myXhr = $.ajaxSettings.xhr();
if(myXhr.upload) { // check if upload property exists
myXhr.upload.addEventListener('progress',progressHandlingFunction, false); // for handling the progress of the upload
}
return myXhr;
},
success: function(msg) {/*...*/}
});
Где ваш Аякса вызов. Мы можем это увидеть? – KingKongFrog
Это похоже на правильное решение http://stackoverflow.com/questions/15259632/upload-image-as-base64-with-jquery-ajax –
Ty Tim, который помог мне решить его :) –