FineUI 官方论坛

标题: 关于在fineui中使用Response语句的问题(导出文件,必看) [打印本页]

作者: 石头    时间: 2012-12-20 03:26
标题: 关于在fineui中使用Response语句的问题(导出文件,必看)
因为要实现下载文件功能,所以使用了以下语句:
  protected void btnHello_Click(object sender, EventArgs e)
        {
            //Alert.Show("你好 FineUI!", MessageBoxIcon.Warning);
            string dir = Server.MapPath("~/download");
            DirectoryInfo dd = new DirectoryInfo(dir);
            FileSystemInfo[] infos = dd.GetFileSystemInfos();
            FileInfo finfo = new FileInfo(infos[0].FullName);
            Response.Clear();
            Response.Charset = "utf-8";
            Response.Buffer = true;
            Response.ContentEncoding = System.Text.Encoding.UTF8;
            Response.AppendHeader("Content-Disposition", "attachment;filename=" + infos[0].Name);
            Response.ContentType = "application/unknown";
            Response.WriteFile(infos[0].FullName);
            Response.Flush();
            Response.Close();
            Response.End();
            
        }
结果点了按钮后直接没反映。试着在 按钮的html代码里添加了一句属性语句:EnableAjax="False"
发现可以实现文件下载了,可是等文件下载完毕后,按钮却变成不可用状态了,变成灰的,请问这个问题如何解决啊!

作者: 孤独的过客    时间: 2012-12-22 13:13
还有一个afterclick.....的什么属性设置为false
作者: sanshi    时间: 2012-12-22 13:20
参考这篇文章:http://www.cnblogs.com/sanshi/archive/2012/11/20/2778332.html

请注意这里ext:Button的属性:

    EnableAjax=false,由于在按钮的点击事件中手工修改了响应头和响应正文,就不能使用FineUI默认的Ajax回发;
    DisableControlBeforePostBack=false,这个属性本来是让按钮在点击后立即变灰,然后在Ajax响应后再次启用,放置多次点击,这里就不需要了。





欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4