请教一下各位关于文件另存后路径的问题!

  请教一下,现在要实现一个另存为excel的操作,用户可以自己选择存放excel的路径,但是一直没找到那个控件,还请大家帮指教一下,ext的什么控件可以让用于选择路径.
  谢谢!

[code="java"]
//倒出EXCLE按钮
Uo.ExcelButton = Ext.extend(Ext.Button, {
initComponent : function(){
this.iconCls = 'gk-uo-button-excel';
Uo.ExcelButton.superclass.initComponent.call(this);
},
init : function(grid){
this.ownerGrid= grid;
},
handler:function(){
var cm= this.ownerGrid.getColumnModel();
var buffer = new StringBuffer();
buffer.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
//列处理
for (var i = 0; i < cm.getColumnCount(); i++){
//if(!cm.isHidden(i)&&this.isIncludeHidden){
if(cm.getColumnHeader(i)!=""&&(!/<(.*)>.*<\/(.*)>/.test(cm.getColumnHeader(i)))){
buffer.append("");
buffer.append(cm.getColumnHeader(i));
buffer.append("");
}
//}
}
buffer.append("");
//数据
var l = this.ownerGrid.getStore().data.items.length;
var items = this.ownerGrid.getStore().data.items;
for (var i = 0;i < l; i++) {
//写数据行
buffer.append("");
var row=items[i].data;
//字段数据
for (var j = 0; j < cm.getColumnCount(); j++) {
var cell= row[cm.getDataIndex(j)];
if(cell!="undefined"&&cell!=undefined){
buffer.append("");
buffer.append(cell);
buffer.append("");
}
}
buffer.append("");
}
buffer.append("");

  if (!Ext.fly('exportfrmDummy')) {     
       var frm = document.createElement('form'); 
       frm.id = 'exportfrmDummy'; 
       frm.name = id;      
       frm.className = 'x-hidden';   
       document.body.appendChild(frm);    
  }                            
    Ext.Ajax.request({
       url: Uo.getContextPath("/exportExcelDocument.action"),
       method : 'POST',   
       form: Ext.fly('exportfrmDummy'),  
       callback: function(o, s, r){
          Uo.Msg(r.responseText);        
       },                       
       isUpload: true,               
       params: { data: buffer.toString()}         
    });

}
});
Ext.reg('uoexcelbutton', Uo.ExcelButton);
[/code]