在做网页开发中,很多时候需要弹出一些小的消息框显示一些提示信息,就如果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+ "'"; if (!ClientScript.IsStartupScriptRegistered("messge")) 两种方法对比如下图所示: 前者父窗口背景全为白色,后者保留父窗口信息。 刷新: 如果是在一个页面中修改了信息后,点击某个按钮关闭该页面,同时需要刷新父窗口,则采用如下方法: if (!ClientScript.IsStartupScriptRegistered("success")) 其中,window.opener.location.href='Admin.aspx'完成父窗口刷新,其实就是将页面定位到父窗口。 还有一种方式是:window.opener.location.reload();这种方法刷新会提示是否继续刷新,即是对整个页面进行重新刷新,跟上面的方法有所不同,它会有如下这个提示: 还可以尝试window.navigate('Login.aspx')方法,这里不再讲述。 |
|
来自: 昵称11448503 > 《编程开发》