我有一个带有multipart/form-data
的enctype的表单,并且我正在使用FormData和ajax发送文件(图像),但是正如我所看到的,它没有发送。这是代码
$(document).ready(()=>{
$('#form').submit((e)=>{
e.preventDefault();
const formData = new FormData();
const title = $('#title').val();
const news = $('#news').val();
formData.append('title', title);
formData.append('news', news);
formData.append('img', $('#form').find('input[type="file"] [name="thumbnail"]:first')[0].files[0]);
$.ajax({
url: '/admin-panel/add-news',
method: 'POST',
data: formData,
processData: false,
contentType: false,
success: (r)=>{
$('#news-container').html(`<div class="news">${r.news}</div>`);
},
error: (xhr,textStatus,error)=>{
try{
const response = JSON.parse(xhr.responseText);
if(response.message){
$('#error').html(`<p class="err">${response.message}</p>`);
}
}catch(error){
$('#error').html(`<p class="err">${xhr.responseText}</p>`);
}
}
})
})
})
但这给了我错误
未捕获的TypeError:无法读取属性“文件”
出什么问题了?
谢谢!
答案 0 :(得分:0)
检查您的ajax属性-contentType