У меня есть форма с вводом файла, которая представляет собой прекрасный файл, когда я использую действие по умолчанию для отправки формы. Но, когда я использую JQuery и AJAX для вызова PHP-файла, он, похоже, не получает файл. Есть ли что-то, что мне нужно добавить для отправки файлов через JQUERY/AJAX?Отправка формы с файлом с использованием JQuery и AJAX
Мой HTML:
<form id="photo-form" enctype="multipart/form-data" method="post" action="">
<input type="hidden" name="MAX_FILE_SIZE" value="5000000"/>
<input type="file" class="upload-input" name="upload-new-input" autocomplete="off"/>
<input type="submit" name="submit" value="submit/>
</form>
Мой JQuery:
$(document).ready(function() {
$("#photo-form").submit(function(e) {
e.preventDefault();
var dataString = $(this).serialize();
$.ajax({
type: "POST",
url: "uploadcover.php",
data: dataString,
async: false,
success: function(data) {
alert(data);
}
});
});
});
Вы не можете сделать это непосредственно. Использование плагина облегчит задачу. – asprin
Вы можете использовать [ajaxForm] (http://www.malsup.com/jquery/form/) для этого. – Calvin
вы можете с HTML5, см. [Этот ответ] (http://stackoverflow.com/a/8758614/560593), обратите внимание, что он не работает на IE ниже 10. В противном случае asprin говорит, что вам нужно будет использовать плагин как флеш и т. д. –