我设法发送了一个FormData对象,如下所示:
var formData = new FormData();
formData.append('file', this.files[0]);
$.ajax({
url: urlUploadProductsFile,
type: 'POST',
data: formData,
cache: false,
contentType: false,
processData: false
}, 'json');
现在我要做的是添加一个额外的CustomerId
发送到服务器。以下内容不起作用:
var formData = new FormData();
formData.append('file', this.files[0]);
$.ajax({
url: urlUploadProductsFile,
type: 'POST',
data: { "file": formData, "CustomerId": 2 },
cache: false,
contentType: false,
processData: false
}, 'json');
我还尝试了以下变体:
data: { "file": formData, "CustomerId": 2 }, processData: true
data: JSON.stringify({ "file": formData, "CustomerId": 2 })
data: { "file": JSON.stringify(formData), "CustomerId": 2 }
data: { file: formData, CustomerId: 2 }
任何帮助表示感谢。
答案 0 :(得分:23)
尝试:
var formData = new FormData();
formData.append('file', this.files[0]);
formData.append('CustomerId', 2);
$.ajax({
url: urlUploadProductsFile,
type: 'POST',
data: formData,
cache: false,
contentType: false,
processData: false
}, 'json');
答案 1 :(得分:2)
您需要将其直接添加到formData
(就像使用'file'
一样),或者使用查询(GET)参数。