use*_*857 5 file-upload extjs4
我正在研究Extjs4文件上传控件.我有文件上传控制视图 -
Ext.define('Balaee.view.kp.dnycontent.Content',
{
extend:'Ext.form.Panel',
requires:[
'Balaee.view.kp.dnycontent.ContentView'
],
id:'ContentId',
alias:'widget.Content',
enctype : 'multipart/form-data',
title:'This day in a history',
items:[
{
xtype: 'fileuploadfield',
hideLabel: true,
emptyText: 'Select a file to upload...',
//inputType: 'file',
id: 'upfile',
width: 220
}],
buttons: [{
xtype : 'button',
fieldlabel:'upload',
action:'upload',
name:'upload',
text: 'Upload',
formBind:'true'
}]
});
Run Code Online (Sandbox Code Playgroud)
控制器中的相应动作是 -
getUpload : function() {
var file10 = Ext.getCmp('ContentId').getEl().down('input[type=file]').dom.files[0];
var reader = new FileReader();
reader.onload = function(oFREvent) {
fileobj=oFREvent.target.result;
console.log(oFREvent.target.result);
};
}
});
Run Code Online (Sandbox Code Playgroud)
因此上面的控制器功能是重新上传文件并以编码格式显示在阅读器的onload功能中.即"console.log(oFREvent.target.result);" line在控制台中以编码格式显示上传文件的数据.我需要将此文件发送到服务器端.所以我传递fileobj作为参数存储as-
var storeObj=this.getStore('kp.DnycontentStore');
storeObj.load({
params:{
data:fileobj
},
callback: function(records,operation,success){
console.log("send");
},
scope:this
})
Run Code Online (Sandbox Code Playgroud)
但它将documentobj显示为未定义的reader.onload函数.那么如何将此文件及其内容发送到服务器端?有没有其他方法可以在控制器中获取上传文件并将其发送到服务器.请有人指导我.
我不知道如何在 php 端处理 fileuplaod,但服务器的返回响应需要进行文本/html 编码请参阅有关此的文档: http: //docs.sencha.com/ext-js/4-1/# !/api/Ext.form.Basic-method-hasUpload
还有 PHP 文件上传脚本示例: http://www.w3schools.com/php/php_file_upload.asp
归档时间: |
|
查看次数: |
3586 次 |
最近记录: |