平常工做中,通常文件上传都是跟随表单一块儿提交的,可是遇到form表单中有许多地方有文件上传时这种方式却不是很适用,如下是我工做中用的文件上传方式:app
{ xtype: 'fileuploadfield', fieldLabel: '封面图', msgTarget: 'side', anchor: '100%', margin: '0 0 0 0', buttonText: '请选择文件...', listeners: { 'change': function(inputFile){ var fd =new FormData(); fd.append('multipartFiles',inputFile.fileInputEl.dom.files[0]); Ext.Ajax.request({ url: "url", cors:true, useDefaultXhrHeader:false, method:'post', rawData:fd, headers: { "Content-Type":null /* 最重要的部分,将Content-Type设置成null,ExtJs则会由内部的XMLHTTPRequest自动生成包含boundary的Content-Type,不然在使用rawData的状况下,ExtJs会将Content-Type设置成text/plain */ }, success:function (res,opts) { alert('success'); var url = res.data.url; }, failure:function (res,opts) { alert('failure'); } }); } } }