分享

网页开发中的弹出消息框与刷新

 昵称11448503 2013-03-01

网页开发中的弹出消息框与刷新  

2008-08-16 11:40:13|  分类: ASP.Net开发 |字号 订阅

         在做网页开发中,很多时候需要弹出一些小的消息框显示一些提示信息,就如果C/S平台开发时使用如MessageBox.Show()类型的功能函数,asp.net中没有提供直接显示消息框的函数,它是通过JavaScritp脚本来实现弹出消息框的,以下介绍一种比较实用的弹出消息框方法。

         常用的弹出消息框的方法就是通过Respone方法调用Alert()函数,如:

                Response.Write("<script language=JavaScript>alert('请先选择一个用户!');</script>");

         这种方法的一个很大的缺点是在弹出消息框的同时,父窗口整个变成了白色,分窗口的内容无法显示,同时关闭消息框后会刷新父窗口,导致父窗口以填写的信息经刷新后不能保存下来。

        一种比较好的方法就是实用ClientScript.RegisterStartupScript方法来调用Alert()函数:

                string obj = "document.getElementById('img_main').src='" + ListBox1.Items[0].Value+ "'";
                string scriptString = "<script language=JavaScript>{";
                scriptString += String.Format("{0}", obj);
                scriptString += "}</script>";

                if (!ClientScript.IsStartupScriptRegistered("messge"))
                {
                    ClientScript.RegisterStartupScript(this.GetType(), "messge", scriptString);
                }  

       两种方法对比如下图所示:

  前者父窗口背景全为白色,后者保留父窗口信息。

  刷新:

      如果是在一个页面中修改了信息后,点击某个按钮关闭该页面,同时需要刷新父窗口,则采用如下方法:

           if (!ClientScript.IsStartupScriptRegistered("success"))
            {
                ClientScript.RegisterStartupScript(this.GetType(), "success", "<script language:javascript>alert('添加用户成功!');window.opener.location.href='Admin.aspx';window.close();</script>");
            }

      其中,window.opener.location.href='Admin.aspx'完成父窗口刷新,其实就是将页面定位到父窗口。

还有一种方式是:window.opener.location.reload();这种方法刷新会提示是否继续刷新,即是对整个页面进行重新刷新,跟上面的方法有所不同,它会有如下这个提示:

                       

    还可以尝试window.navigate('Login.aspx')方法,这里不再讲述。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多