使用jquery文件上传和发送方法如何在formData中发送javascript对象?

使用jquery文件上传和发送方法如何在formData中发送javascript对象?,javascript,jquery,jquery-file-upload,Javascript,Jquery,Jquery File Upload,我使用jquery文件上传和send方法。它就像一个符咒,文件被正确发送。这里有一些代码来说明我的工作 $form.fileupload( 'send', { files: filesList, formData: function() { return [{name: 'people', value: people}]; } } ) 但是我尝试发送一个javascript对象,例如,但它没有很好地发送 var people = [

我使用jquery文件上传和send方法。它就像一个符咒,文件被正确发送。这里有一些代码来说明我的工作

$form.fileupload(
  'send', 
  {
    files: filesList,
    formData: function() {  
        return [{name: 'people', value: people}];
    }
  }
)
但是我尝试发送一个javascript对象,例如,但它没有很好地发送

var people = [
   {id: 1, firstName: 'Robert', age: '25'},
   {id: 2, firstName: 'Mohamed', age: '40'}
];
我可以在标题中看到对象没有序列化

我认为这是因为文件是通过表单发送的,我想知道是否可以将表单数据与json数据“混合”在一起。我为此创建了一个文件(您必须添加至少一个文件才能使其工作)


你们认为我必须通过表格发送所有数据吗?或者有一种解决方案可以通过表单发送文件,通过序列化发送我的js对象?

试试JSON.stringify(people),它应该返回一个字符串,并将该字符串传递给服务器。在您的服务器上,使用您正在使用的任何框架(您可以使用google PHP/ASP json解析)将其再次编码为对象。如果它不起作用,jquery文件上载将无法正确解释该字符串。我在jquery.fileupload.js的函数_getFormData中看到字符串类型没有被解释。Mh,我对jquery文件上传不太熟悉,因此基于意外的
对象
输出,这有点像是胡乱猜测。我在
\u getFormData
中没有看到任何任意的限制(它只是有一种从函数、数组或对象获得相同结果的不同方法),但我建议先尝试将更简单的数据传递给
发送
(就像是一个有1或2个
int
值的数组,在尝试像函数或对象这样更复杂的事情之前。我测试了它。它可以与简单的对象一起工作,比如{id:1,firstName:'robert',age:25}你是用这个简单的对象替换
var people=…
,还是用整个
返回[{…}]
从formData函数中?尝试JSON.stringify(people),它应该返回一个字符串,并将该字符串传递给服务器。在服务器上,使用您使用的任何框架将其重新编码为对象(您可以使用google PHP/ASP JSON解析)它不起作用,jquery文件上传没有正确解释字符串。我在jquery.fileupload.js的函数_getFormData中看到字符串类型没有被解释。Mh,我对jquery文件上传不太熟悉,因此基于意外的
对象
输出,这有点像是一个胡乱猜测。我没有看到任何任意的lim
\u getFormData
中的迭代(它只是有一种从函数、数组或对象获得相同结果的不同方法),但我建议先尝试将更简单的数据传递给
发送
(就像是一个有1或2个
int
值的数组,在尝试像函数或对象这样更复杂的事情之前。我测试了它。它可以与简单的对象一起工作,比如{id:1,firstName:'robert',age:25}你是用这个简单的对象替换
var people=…
,还是用整个
返回[{…}]
从您的formData函数?