Extjs如何:页面上的一个按钮点击之后,自动访问一个PHP 文件它能够自动生成一个Excel文件供下载?

期望实现这样一个设计Ext.panel.Panel面板上安排有一个Ext.button.Button按钮,点击它的时候,期望通过它去访问一个服务器上面的一个PHP文件,这... 期望实现这样一个设计Ext.panel.Panel面板上安排有一个Ext.button.Button按钮,点击它的时候,期望通过它去访问一个服务器上面的一个PHP文件,这个PHP文件请求执行的时候会自动生成一个可供下载的Excel文件给这个点击者。 展开
 我来答
火影乐客
2015-01-01 · 超过23用户采纳过TA的回答
知道答主
回答量:97
采纳率:0%
帮助的人:68.3万
展开全部

可以这样,button里写 window.open('xxx.php?fileName=aaaa'),然后这个php文件里根据这个fileName找到对应文件,然后在这个页面以文件流的形式输出到浏览器端,这样会生成保存文件对话框

我是搞C#的,C#的文件流输出到浏览器代码如下

stream = File.Open(filePathName, FileMode.Open, FileAccess.Read);
                    byte[] data = new byte[stream.Length];
                    int result = stream.Read(data, 0, data.Length);
                    if (!File.Exists(filePathName))
                        return;
                    HttpContext.Current.Response.Buffer = true;
                    HttpContext.Current.Response.Charset = Encoding.UTF8.ToString();
                    HttpContext.Current.Response.AddHeader("Content-Disposition", "inline;filename=" + Server.UrlEncode(fileName));
                    HttpContext.Current.Response.AddHeader("Content-Length", data.Length.ToString());
                    HttpContext.Current.Response.ContentType = "application/ms-excel";
                    stream.Close();
                    File.Delete(filePathName);
                    Response.BinaryWrite(data);
                    HttpContext.Current.ApplicationInstance.CompleteRequest();
追问
嗯,我理解您的解释
唯一的差别是我这里的对应的文件是一个PHP执行之后调用PHP相关程序动态自动生成的一个Excel文件,不是一个静态的那个fileName文件C#我没有学习过但是还是谢谢你的热心帮助!

新春快乐,万事如意!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式