在 Sencha Touch 2.3 中选择文件后自动上传文件
Auto-File upload after selecting file in Sencha Touch 2.3
我正在帮助开发一个 Sencha Touch 2.3 应用程序。我想要实现的功能之一是上传一个文件,然后我在后端使用 PHP 做各种事情。但是,我找不到真正完成上传的方法 (甚至无法显示一个对话框 select 要上传的文件!)
我有一个导航栏,如下所示:
...
navigationBar: {
docked: 'top',
id: 'mainAdminToolbar',
items: [
{ ...
},
{
align: 'right',
hidden: true,
text: 'Import',
itemId: 'ImportBtn',
}
]
...
在我的主控制器文件中,我有以下内容:
ImportBtn: "adminMain #ImportBtn",
"adminMain #ImportBtn": {
tap: "onImportTap"
},
...
我看了很多示例(例如 this one and this 一个),但我可以让其中的 none 工作。我相信后者也可能适用于更新版本的框架,但我现在无法更新并且必须使用版本 2.3
我想做的是:
- 让用户点击按钮
- 弹出对话框 window,用户可以在其中 select 文件
- selected
后自动上传文件
- 使用文件做各种服务器端的事情
如何使用 Sencha Touch 2.3 实现此目的?
尝试使用
xtype: 'filefield' 并且它是 'updatedata' 事件
到select文件你可以这样写
{
xtype: 'filefield',
itemId: 'ImportBtn',
listeners: {
change: function (button, newValue, oldValue, eOpts) {
alert(newValue);
}
}
}
在 select 下载文件后,你可以用这个获取它(它在 2.4 中工作正常)
var file = [your-filefield].getComponent().input.dom.files[0];
这里有更多关于文件字段的内容
http://docs.sencha.com/touch/2.3.0/#!/api/Ext.field.File
我正在帮助开发一个 Sencha Touch 2.3 应用程序。我想要实现的功能之一是上传一个文件,然后我在后端使用 PHP 做各种事情。但是,我找不到真正完成上传的方法 (甚至无法显示一个对话框 select 要上传的文件!)
我有一个导航栏,如下所示:
...
navigationBar: {
docked: 'top',
id: 'mainAdminToolbar',
items: [
{ ...
},
{
align: 'right',
hidden: true,
text: 'Import',
itemId: 'ImportBtn',
}
]
...
在我的主控制器文件中,我有以下内容:
ImportBtn: "adminMain #ImportBtn",
"adminMain #ImportBtn": {
tap: "onImportTap"
},
...
我看了很多示例(例如 this one and this 一个),但我可以让其中的 none 工作。我相信后者也可能适用于更新版本的框架,但我现在无法更新并且必须使用版本 2.3
我想做的是:
- 让用户点击按钮
- 弹出对话框 window,用户可以在其中 select 文件
- selected 后自动上传文件
- 使用文件做各种服务器端的事情
如何使用 Sencha Touch 2.3 实现此目的?
尝试使用 xtype: 'filefield' 并且它是 'updatedata' 事件
到select文件你可以这样写
{
xtype: 'filefield',
itemId: 'ImportBtn',
listeners: {
change: function (button, newValue, oldValue, eOpts) {
alert(newValue);
}
}
}
在 select 下载文件后,你可以用这个获取它(它在 2.4 中工作正常)
var file = [your-filefield].getComponent().input.dom.files[0];
这里有更多关于文件字段的内容 http://docs.sencha.com/touch/2.3.0/#!/api/Ext.field.File