2014-01-07 68 views
2

我有一个文件上传字段是一个更大的形式的一部分。当选择文件时,文件应该以post(?)数据的形式上传到API。文件上传与ExtJS onFilefieldChange

于是我开始与

onFilefieldChange: function(filefield, value, e0pts) { 
    filefield.form.submit({ 
     url: '../api/FileUpload?type=logo', 
     waitMsg: 'Uploading your logo...', 
     success: function(fp, o) { 
      msg('Success', 'Processed file "' + o.result.file + '" on the server'); 
     } 
    }); 
} 

但不会这个提交整个表单,而不仅仅是文件!?

与我一样,它既不。相反,我收到错误消息“无法调用未定义的提交”,但不应该ExtJS为我填充filefield变量?

最后一件事,我可以提交文件作为简单的发布数据,或者它总是“多部分形式的数据”?

+0

你是什么意思“简单的发布数据”。如果你正在上传文件,你还有什么要读的? –

+0

当我得到JSON时,我只需将POST数据blob并将其放入JSON解串器。对于多部分表单数据,我必须首先提取正确的块。 – Alexander

+0

这就是文件如何上传。你打算如何用JSON编码二进制文件? –

回答

3

我认为从你的代码,你需要去up从父项表单和提交,然后它应该被定义。

filefield.up('form').getForm().submit()