我在我的页面中使用了一个元素,其中包含一些输入字段,如first_name,last_name,profile_pic等,并且基于用户输入,我使用POST调用将此数据保存在后端。我使用以下行获取所有这些表单数据:
fd = new FormData(mentorForm[0]);
然后我只是使用以下代码发送此表单数据:
$.ajax({
url: "my url",
type: "PUT",
data: fd,
})
我可以毫无问题地更新个人资料照片和所有其他字段。 但是我遇到的问题是,每次我更新表单中的任何值(而不是输入文件类型字段)时,它会为输入类型文件发送null,因为我没有在其中选择任何内容。有人可以帮我理解如何预防吗?
答案 0 :(得分:1)
每个默认的AJAX调用都将处理您的数据。因此,为了防止在请求中添加以下两个属性:
contentType: false,
processData: false,
所以你的AJAX调用看起来像这样:
$.ajax({
url: "my url",
type: "PUT",
data: fd,
contentType: false,
processData: false,
});