选择分类的TYPE为BUTTON,
上传的TYPE也为BUTTON,但是选择文件的界面是自己要写的。
以下为上传按钮对上传对话框的调用和上传对话框的生成代码。
{
text:'上传文件',
iconCls:'icon-add',
tooltip:'上传贸易关系文件',
pressed:false,
handler:function(){
uploadWin(orgTradeGrid.getStore(),orgId);
}
}
//上传按钮方法
function uploadWin(store,orgId){
var uploadWin=new OrgUploadWin(orgId);
uploadWin.height=200;
uploadWin.title="导入Excel文件";
uploadWin.gridStore = store;
uploadWin.show();
uploadWin.center();
}
//window
OrgUploadWin=Ext.extend(Ext.Window,{
constructor:function(orgId){
var oifp=new OrgUploadForm(orgId);
var config={
frame:true,
width:380,
autoHeight:true,
modal:true,
items:[oifp]
};
Ext.apply(this, config);
OrgUploadWin.superclass.constructor.call(this);
}
});
//上传form
OrgUploadForm=Ext.extend(Ext.form.FormPanel,{
constructor:function(orgId){
var config={
defaultType:'textfield',
defaults:{width:200,allowBlank:false},
baseCls:'x-plain',
labelWidth:100,
bodyStyle:'margin:10px 0;',
labelAlign:'right',
buttonAlign:'center',
fileUpload:true,
items:[{
name:'file',
id:'file',
buttonText:'浏览',
fieldLabel:'贸易关系文件',
xtype:'fileuploadfield',
allowBlank:false
}],
buttons:[{
text:'确定',
iconCls:'icon-save',
scope:this,
handler:function(){
fileValue=Ext.getCmp('file').getValue();
if(fileValue.substring(fileValue.length-5,fileValue.length)!=".xlsx"){
Ext.Msg.alert("系统提示","只能上传 Excel 文件");
return;
}
}
},{
text:'取消',
scope:this,
iconCls:'icon-cross',
handler:function(){
this.ownerCt.close();
}
}]
};
Ext.apply(this, config);
OrgUploadForm.superclass.constructor.call(this);
}
});
如果是用的form.panel的话
文本框是 type:'textfield'
按钮是 type:'button'
选择上传目录记得好像是用swfUpload