gpt4 book ai didi

file-upload - 使用 extjs4 上传文件

转载 作者:行者123 更新时间:2023-12-04 03:14:46 24 4
gpt4 key购买 nike

我正在研究 Extjs4 文件上传控制。我有文件上传控件的 View -

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'

}]
});

Controller 中的相应 Action 是-
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);

};
}
});

所以上述 Controller 的功能是检索上传的文件并在阅读器的 onload 功能内以编码格式显示它。即“console.log(oFREvent.target.result);”行在控制台中以编码格式显示上传文件的数据。我需要将此文件发送到服务器端。所以我将上面的 fileobj 作为参数传递给存储为-
var storeObj=this.getStore('kp.DnycontentStore');
storeObj.load({
params:{
data:fileobj
},
callback: function(records,operation,success){
console.log("send");
},
scope:this
})

但是它在 reader.onload 函数之外将 fileobj 显示为 undefined 。那么如何将此文件及其内容发送到服务器端呢?有没有其他方法可以在 Controller 中获取上传的文件并将其发送到服务器。请有人指导我。

最佳答案

我不知道如何在 php 端处理 fileuplaod,但是来自服务器的返回响应需要进行 text/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

关于file-upload - 使用 extjs4 上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15918347/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com