自定义ExtJS文件上传

平常工做中,通常文件上传都是跟随表单一块儿提交的,可是遇到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');
            }
        });
        }
      }
    } 
相关文章
相关标签/搜索