Extjs--关于文件的上传
这几天要做一个页面的上传和下载,从年前一直纠结到现在,一直以为是Extjs基础下的上传下载,其实与Extjs基本没有什么关系,只是一直思维被局限于Extjs界面的缘故。听说Extjs4.0有对应的控件,由于目前公司项目非4.0,所以目前暂未实现过,下面记录一下自己目前总结的解决办法。
上传:
[javascript]
{
xtype : 'textfield',
fieldLabel : '上传文件',
name : 'userfile',
id : 'userfile',
inputType : 'file',
width : 300,
height : 20
//emptyText: '请选择上传文件...' 不知道为什么 这两个参数在IE8下都是无效的
// blankText : 'File can\'t not empty.'
}
由一个Button触发上传:
[javascript]
{
xtype : 'button',
text : '上传',
name : 'doc_upbut',
id : 'doc_upbut',
handler : function() {
if (form.form.isValid()) {
var upFile = Ext.getCmp('userfile').getValue();
if(upFile == ''){
Ext.Msg.alert('错误','请选择你要上传的文件');
return;
}
var upFileLastName = upFile.toString();
var LastNames = upFileLastName.split("\.")
if(LastNames[LastNames.length-1] == ("exe")){
Ext.Msg.alert('错误','不支持该类型文件!');
return;
}
var file_up = document.getElementById('userfile');
file_up.select();
var realpath = document.selection.createRange().text;
realpath = encodeURIComponent(realpath);//IE8以上会出现一个虚拟路径,在此要获取真实路径
Ext.MessageBox.show({
title : '请稍等',
msg : '文件正在上传...',
progressText : '',
width : 300,
progress : true,
closable : false,
animEl : 'loding'
});
Ext.Ajax.request({
&nb
补充:web前端 , JavaScript ,