今天做提示框的时候一直不显示,让我郁闷好久,晚上吃饭的时候问了同事一下,他给了一个思路,

他说可能是因为由于页面中的无闪刷新导致的结果;百度了一下真找到了解决方法

在页面中存在无闪刷新控件的时候提示框不能在用普通的,要特殊的处理一下;

/// <summary>  
        /// 显示提示信息(用于页面中存在无闪刷新控制的提示)  
        /// </summary>  
        /// <param name="controlName">无闪刷新控件名称</param>  
        /// <param name="message">消息内容</param>  
        public static void UserControlMessageShow(Control controlName, string message)
        {
            ScriptManager.RegisterClientScriptBlock(controlName, typeof(UpdatePanel), "提示", "alert('" + message + "');", true);
        }

普通的提示框:

/// <summary>
        /// 显示提示信息
        /// </summary>
        /// <param name="page">页面对象</param>
        /// <param name="msg">消息</param>
        public static void MessageShow(System.Web.UI.Page page, string message)
        {
            if (message == null || message == String.Empty)
                return;
            message = ToJsString(message);
            string js = "<script>alert('" + message + "');</script>";

page.ClientScript.RegisterClientScriptBlock(page.GetType(),"append_message", js);
        }

还有另一种“用户控件”的提示框:

1.方法一

/// <summary>
        /// 显示提示信息
        /// </summary>
        /// <param name="page">页面对象</param>
        /// <param name="msg">消息</param>
        public static void UserControlMessageShow(System.Web.UI.UserControl userControl, string message)
        {
            if (message == null || message == String.Empty)
                return;
            message = ToJsString(message);
            string js = "<script>alert('" + message + "');</script>";

userControl.Page.ClientScript.RegisterClientScriptBlock(userControl.Page.GetType(), "append_message", js);
        }

2.方法二

/// <summary>
        /// 显示提示信息
        /// </summary>
        /// <param name="page">页面对象</param>
        /// <param name="msg">消息</param>
        public static void UserControlMessageShow(System.Web.UI.UserControl userControl, string message, string goPage)
        {
            if (message == null || message == String.Empty)
                return;
            message = ToJsString(message);
            StringBuilder sb = new StringBuilder();
            sb.Append("<script>");
            sb.AppendFormat("alert('{0}');", message);
            sb.AppendFormat("window.location.href='{0}';", goPage);
            sb.Append("</script>");

userControl.Page.ClientScript.RegisterClientScriptBlock(userControl.Page.GetType(), "append_message", sb.ToString());
        }

.Net中使用无闪刷新控件时提示框不显示的更多相关文章

  1. Winform下编译Dev控件时提示license.licx文件错误

    有时候,用vs2005或2008,用到第3方控件的时候会自动生成licenses.licx.我用的是devexpress.在程序运行的时候总是出现dev的画面,很烦.在网上找了找,找到去掉画面的方法: ...

  2. 与TableView插入、删除、移动、多选,刷新控件

    一.插入.删除.移动.多选 方法一: Cell的插入.删除.移动都有一个通用的方法,就是更新tableView的数据源,再reloadData,这样做实现上是简单一点,但是reloadData是刷新整 ...

  3. android官方下拉刷新控件SwipeRefreshLayout的使用

    可能开发安卓的人大多数都用过很多下拉刷新的开源组件,但是今天用了官方v4支持包的SwipeRefreshLayout觉得效果也蛮不错的,特拿出来分享. 简介:SwipeRefreshLayout组件只 ...

  4. # iOS 10 适配 # 适配刷新控件 以MJRefresh 为例

    在iOS10中ScrollView 添加了一个refreshControl的东西 - - 不知道水果公司做了什么  导致原有的刷新控件类刷新后frame.y 向下偏移了20 起初以为是水果调整了sta ...

  5. [Android]下拉刷新控件RefreshableView的实现

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4172483.html 需求:自定义一个ViewGroup,实现 ...

  6. android SwipeRefreshLayout google官方下拉刷新控件

    下拉刷新功能之前一直使用的是XlistView很方便我前面的博客有介绍 SwipeRefreshLayout是google官方推出的下拉刷新控件使用方法也比较简单 今天就来使用下SwipeRefres ...

  7. Android PullToRefresh下拉刷新控件的简单使用

    PullToRefresh这个开源库早就听说了,不过一直没用过.作为一个经典的的开源库,我觉得还是有必要认识一下. 打开github上的网址:https://github.com/chrisbanes ...

  8. WPF中不规则窗体与WindowsFormsHost控件的兼容问题完美解决方案

    首先先得瑟一下,有关WPF中不规则窗体与WindowsFormsHost控件不兼容的问题,网上给出的解决方案不能满足所有的情况,是有特定条件的,比如  WPF中不规则窗体与WebBrowser控件的兼 ...

  9. 五种情况下会刷新控件状态(刷新所有子FWinControls的显示)——从DFM读取数据时、新增加子控件时、重新创建当前控件的句柄时、设置父控件时、显示状态被改变时

    五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整 ...

随机推荐

  1. logging 模块误用导致的内存泄露

    首先介绍下怎么发现的吧, 线上的项目日志是通过 logging 模块打到 syslog 里, 跑了一段时间后发现 syslog 的 UDP 连接超过了 8W, 没错是 8 W. 主要是 logging ...

  2. nginx的URL重写应用实例

    1,NGINx的URL重写 NGINX 的URL重写模块用的比较多,主要使用的命令有if rewrite set break 2 if命令 语法如下"" 语法:if(conditi ...

  3. 在ubuntu/deepin/mint等系统中使用命令删除文件或文件夹

    此命令操作需谨慎: sudo rm -rf 文件夹路径(或文件路径)  

  4. VB.net Wcf事件广播(订阅、发布)

    这篇东西原写在csdn.net上,最近新开通了博客想把零散在各处的都转移到一处.   一.源起 学WCF有一段时间了,可是无论是微软的WebCast还是其他网上的教程,亦或我购买的几本书中,都没有怎么 ...

  5. oracle中将自建用户下的所有表删除

    select 'drop table '||table_name||' ;' from user_tables;select 'drop sequence '||sequence_name||' ;' ...

  6. top命令

    TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中C ...

  7. 怎样学习Java

    JAVA自学之路 一:学会选择 ,当你要走向社会的时候,就不要再把自己当成学生,不要把自己的将来交给别人,学会运用自己的眼睛去观察,去了解这个世界吧. 我讲一个通过招聘网站的观察方法: http:// ...

  8. centos ADSL 拨号上网设置

    下面主要介绍一下,在CentOS命令行环境下如何配置 ADSL 联网: 1.确保安装了网卡并能正常运行,使用命令查看一下网卡状态: [root@localhost simon]# /sbin/ifco ...

  9. 在eclipse中遇到cannot open output file xxx.exe: Permission denied 的解决办法

    该问题出现的原因主要原因是,编译后运行的程序未能正确关闭,解决方法:删除debug目录即可 同理在vc6.0遇到同样问题时,删除debug目录,或者重启vc6.0即可

  10. QT中将ASCII转换为对应数值的方法

    有时候需要将一段ASCII转换为数值进行传输(比如串口) QString str=codeEdit->toPlainText(); QVector<uint>v=str.toUcs4 ...