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
,形式沒有得到提交,但通過標準表單提交不是阿賈克斯,並給了我一個錯誤Uncaught TypeError: Illegal invocation
發送形式使用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>