FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 14421|回复: 13
打印 上一主题 下一主题

【已解决】(专业版2.2.1)请教:如何弹出提示框后执行导...

[复制链接]
跳转到指定楼层
楼主
发表于 2015-3-4 10:04:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

直接上代码:
  1. if (bCheckOk == true)
  2.                     {
  3.                         PageContext.RegisterStartupScript(Alert.GetShowInTopReference(string.Format("导入成功信息:{0}行,耗时:{1:F}秒。", OKkaoshengs.Count, useTime), "导入提示", MessageBoxIcon.Error));
  4.                         return;
  5.                     }
  6.                     else
  7.                     {
  8.                         Alert.ShowInTop(string.Format("Excel内发现{0}行数据有错误,耗时:{1:F}秒.<br/>请下载错误信息,修正后重新导入! ", ErrorRowDt.Rows.Count, useTime), "导入提示", MessageBoxIcon.Information);
  9.                         //输出Excel
  10.                         Response.ClearContent();
  11.                         Response.AddHeader("Content-Disposition", "attachment; filename="" + filename + ".xls"");
  12.                         Response.ContentType = "application/excel";
  13.                         Response.ContentEncoding = System.Text.Encoding.UTF8;
  14.                         Response.Write(ms);
  15.                         Response.End();

  16.                         //释放资源
  17.                         workbook = null;
  18.                         ms.Close();
  19.                         ms.Dispose();
  20.                         errorFileStream.Close();
  21.                         return;
  22.                     }
复制代码
问题:以上代码执行的结果是不会弹出提示框,直接在浏览器上显示下载Excel对话框了。
需求:如何才能先弹出提示对话框,点击确定关闭提示对话框后,才在浏览器上显示下载Excel对话框?
谢谢大家。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
沙发
发表于 2015-3-4 10:22:35 | 只看该作者
建议打开新页面进行下载,然后再关闭这个页面
板凳
发表于 2015-3-4 10:35:00 | 只看该作者
可以参考示例,点击确认按钮后,在进行下载操作:http://fineui.com/demo_pro/#/demo_pro/message/confirm_cancel.aspx

你目前的示例中,Response.ClearContent(); 这句代码就把之前输出的提示框给清除了
地板
 楼主| 发表于 2015-3-4 11:21:48 | 只看该作者
sanshi 发表于 2015-3-4 10:35
可以参考示例,点击确认按钮后,在进行下载操作:http://fineui.com/demo_pro/#/demo_pro/message/confirm_ ...

示例里面都是直接这样:
if (!IsPostBack)
{
   btnOperation2.OnClientClick = Confirm.GetShowReference……
}

导致一点击保存按钮就弹出提示了,并没有达到我想要的效果呢?
我现在是点击保存按钮后,先检查Excel内容有无错误,接着才弹出提示框,关闭提示框才开始下载错误Excel
5#
 楼主| 发表于 2015-3-4 11:23:07 | 只看该作者
本帖最后由 Mr.Wu 于 2015-3-4 11:24 编辑
sanshi 发表于 2015-3-4 10:35
可以参考示例,点击确认按钮后,在进行下载操作:http://fineui.com/demo_pro/#/demo_pro/message/confirm_ ...

我删除Response.ClearContent();这句,还是一样,没有弹出提示框呢

希望老大在官网上写个demo,点击按钮后执行一些其它操作,最后才弹出提示框,而不是一点击按钮就弹出一个框来
6#
发表于 2015-3-4 11:49:48 | 只看该作者
Mr.Wu 发表于 2015-3-4 11:23
我删除Response.ClearContent();这句,还是一样,没有弹出提示框呢

希望老大在官网上写个demo,点击按钮后 ...

你把 OnClientClick 改为 后台点击事件,然后通过 PageContext.RegisterStartupScript 注册是一样的道理
7#
发表于 2015-3-4 12:17:27 | 只看该作者
8#
 楼主| 发表于 2015-3-4 13:53:46 | 只看该作者
sanshi 发表于 2015-3-4 12:17
写了个示例,参考:http://fineui.com/demo_pro/#/demo_pro/message/alert_download.aspx

非常感谢老大指点,已经可以弹出提示框并下载Excel。
如图:


美中不足的是:如果能在弹出提示框时,先关闭(或隐藏)母窗口就好了,不然下载完excel后还得手工来关闭导入时的窗口。
注:在PageContext.RegisterStartupScript里面加入ActiveWindows.GetHideReference;也没起作用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
9#
发表于 2015-3-4 16:05:01 | 只看该作者
Mr.Wu 发表于 2015-3-4 13:53
非常感谢老大指点,已经可以弹出提示框并下载Excel。
如图:

参考:
http://fineui.com/demo_pro/message/alert_download2.aspx
http://fineui.com/demo_pro/commo ... lert_download2.aspx
10#
 楼主| 发表于 2015-3-5 11:51:09 | 只看该作者
本帖最后由 Mr.Wu 于 2015-3-5 14:53 编辑

老大,你的demo是不是特殊情况下才有用?
我试了个例子,在Form内点击按钮,发现没有你的效果出来,也就是说不会隐藏父窗口。
直接上图:


附上测试用的源代码。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-5-1 22:58 , Processed in 0.053270 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表