weixin_42402472 2010-10-27 11:39
浏览 267
已采纳

struts文件下载 不显示保存框

这是我的action的代码:

[code="java"]HttpServletResponse response = ServletActionContext.getResponse();

     OutputStream out = null; 
     FileInputStream in = null; 

    try
    {
        response.setContentType("application/octet-stream;charset=UTF-8");
        String fileName = URLEncoder.encode(name, "UTF-8");
        response.addHeader("Content-Disposition","attachment;filename=" + fileName);

        out = response.getOutputStream(); 
        in = new FileInputStream("C:/TEMP/"+id+".chiron"); 
          byte[] b = new byte[in.available()]; 
          in.read(b);
          out.write(b);
          out.flush();

    } catch (Exception e)
    {
        System.out.println("Before e.printStackTrace");
        e.printStackTrace();
    }finally{
        if(out!=null)
            try
            {
                out.close();
            } catch (IOException e)
            {
                e.printStackTrace();
            }
    }[/code]

这是我的js里面的代码
[code="java"]var downId = record.data.id;
var downName = record.data.realName;
confirm('确定要下载:'+downId+'?');
Ext.Ajax.request({
url : 'fileDown.action',
params : {fileId : downId,fileName : downName},
success : function(){
Ext.Msg.alert('提示','文件下载成功');
},
failure : function(){
Ext.Msg.alert('提示','文件下载失败');
},
error : function(form, action) {
Ext.Msg.alert('错误', '文件下载过程中出现了\n不可预知的错误.');
}
});[/code]
返回的时候,没有出现保存的提示框。。。。
求高手。。求真相。。。

  • 写回答

2条回答 默认 最新

  • lizhiyezi 2010-10-27 13:59
    关注

    [code="java"]Ext.Ajax.request({
    url : 'fileDown.action',
    params : {
    fileId : downId,
    fileName : downName
    },
    form : Ext.DomHelper.append(Ext.getBody(), {
    tag : 'form',
    enctype : 'multipart/form-data'
    }),
    success : function() {
    Ext.Msg.alert('提示', '文件下载成功');
    },
    failure : function() {
    Ext.Msg.alert('提示', '文件下载失败');
    },
    error : function(form, action) {
    Ext.Msg.alert('错误', '文件下载过程中出现了\n不可预知的错误.');
    }
    });[/code]
    给个form属性就行了。不然你动态创建iframe 设置iframe scr 属性进行下载。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多