1

如何将 FormData 对象放入表单并使用 ajaxForm 插件提交?我正在尝试执行以下操作:

var fd = new FormData();
fd.append('photo', file);
var form = $("<form method='POST' action='url.php' enctype='multipart/form-data'></form>");

将 fd formData 作为对象添加到表单中,并通过以下方式将表单转换为 ajaxForm:

form.ajaxForm({
      beforeSend: function(e) {},
      uploadProgress: function(event, position, total, percentComplete) {},
      complete: function(data) {}
});

然后提交表格。所以在 url.php 中我可以通过 $_FILES['photo']; 获取文件

4

2 回答 2

2

您可以像普通的ajax post一样直接发送数据..

喜欢 ..

form.ajaxForm({
  data: { data: fd }, 
  beforeSubmit:function() { 

    } 
  beforeSend: function(e) {},
  uploadProgress: function(event, position, total, percentComplete) {},
  complete: function(data) {}
});

我已经测试过了,它工作正常..

于 2013-10-18T06:04:17.230 回答
0

这对我有用

var fd = new FormData(this);
fd.append('upload', file);

$(this).ajaxSubmit({
    formData: fd,
    ...
});
于 2014-02-20T02:11:09.507 回答