1
$('#add-article').submit(function() {
var formData = new FormData($(this));
$.ajax({
type: 'post',
url: '/add-article',
dataType: 'json',
data: formData,
//processData: false,
//contentType: false,
error: function(data) {
var errors = data.responseJSON;
$.each(errors, function(k, v) {
$('#' + k).addClass('has-error').append('<span class="help-block"><strong>' + v[0] + '</strong></span>');
});
},
success: function(data) {
window.location.replace(data.url);
}
});
return false;
});
Когда я закомментировать porcessData: false
, форма же получить представлены, но через стандартную форму Представлять не Ajax, и дал мне ошибку Uncaught TypeError: Illegal invocation
Отправить форму с файлами с помощью Ajax
Если добавить эти две строки в, ajax представит пустую форму.
Моя форма:
<form role="form" method="POST" action="{{ route('post_add_article') }}" id="add-article" enctype="multipart/form-data">
<input type="text" class="form-control" name="title">
<textarea class="form-control" rows="16" name="body"></textarea>
<input type="file" name="files[]" multiple>
<button type="submit" class="btn btn-primary pull-right">Submit</button>
</form>