extjsダウンロード機能を実現
//extjs ,
var btn_out_user = new Ext.Button({ text : ' excel', iconCls : 'icon-del', handler : function() { Ext.Msg.show({ title:' ', msg: ' ?', buttons: Ext.Msg.YESNO, width : 250, fn: function(btn){ if(btn=='yes'){ Ext.MessageBox.wait(' , ...', ' '); Ext.Ajax.request({ url : 'outShopInfoAction.action', success : function(resp, ops){ var obj = Ext.decode(resp.responseText); window.parent.document.location = obj.path;// Ext.MessageBox.updateProgress(1); // Ext.MessageBox.hide(); // ds_user.load({params : {start : 0,limit : 20}}); }, failure : function() { Ext.MessageBox.updateProgress(1); Ext.MessageBox.hide(); Ext.Msg.show({ title : ' ', msg : ' !', width : 200, buttons : Ext.Msg.OK, icon : Ext.Msg.ERROR }); } }); } }, icon: Ext.MessageBox.QUESTION }); } });
:
public void out() throws Exception{ String outPath = "../upload/test.xls"; this.getResponse().getWriter().write("{'path' : '"+outPath+"'}"); }
json , , path, :String outPath = "../upload/test.xls"。 , , 。
var obj = Ext.decode(resp.responseText); window.parent.document.location = obj.path;
, 。