Jquery Ajax请求图像
我想发出一个包含图片的AJAX请求。只有图像才是一种形式,而且必须是图像Jquery Ajax请求图像,jquery,ajax,Jquery,Ajax,我想发出一个包含图片的AJAX请求。只有图像才是一种形式,而且必须是图像 var form = $('form')[0]; // You need to use standard javascript object here var formData = new FormData(form); var data = { id: id, title:title, photo:formdata }; $.ajax({ type: 'POST', enctype: 'multi
var form = $('form')[0]; // You need to use standard javascript object here
var formData = new FormData(form);
var data = {
id: id,
title:title,
photo:formdata
};
$.ajax({
type: 'POST',
enctype: 'multipart/form-data',
url: '/my-url',
data: JSON.stringify(data),
processData: false,
cache: false,
contentType: false,
success: function(response){
console.log(response);
},
error: function(data){
console.log("error");
console.log(data);
}
})
我用
.val()获取id和标题代码>我想保留这个..,它对id和标题工作正常,但我不知道如何将图像发送到数据库。您的问题是因为您试图将二进制FormData
附加到一个对象,然后将其序列化
相反,您需要将附加数据添加到FormData
对象中,以便以相同的方式对其进行编码。试试这个:
var form = $('form')[0];
var formData = new FormData(form);
formData.append('title', title);
formData.append('id', id);
$.ajax({
type: 'POST',
enctype: 'multipart/form-data',
url: '/my-url',
data: formData,
processData: false,
cache: false,
contentType: false,
success: function(response) {
console.log(response);
},
error: function(data){
console.log("error");
console.log(data);
}
})
请注意,如果从表单
中的输入
元素中检索id
和标题
值,则您甚至不需要附加()
行,因为当您向构造函数提供表单
时,它们将自动包含在表单数据
中
还要确保在表单
元素的提交
事件下运行此代码,并调用预防默认值
。不要把它放在点击提交按钮下。那么你希望有人为你编写服务器端部分吗?@Rorymcrossan noo.我只想知道它为什么没有传递图像..我正在查看“请求负载”和照片,它是空的..请给我们看看PHP代码。我敢打赌,您的问题将与formdata
部分有关。这就是整个表单
。不要使用JSON.stringify,只需将FormData
对象直接传递到data