1.ClientScript.RegisterStartupScript(GetType(),"message","<script>alert('第一种方式,无白屏!');</script>");
2.HttpContext.Current.Response.Write("<script>alert('第二种方式,有白屏!')</script>");
3.public static void Show(System.Web.UI.Page page, string msg)
{
page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<script language='javascript' defer>alert('" + msg.ToString() + "');</script>");
}
Show(this, "第三种方式,无白屏!");
4.Response.Write("<script>alert('第四种方式,有白屏!')</script>");
5.window.showModalDialog('XXX.aspx', '', 'dialogWidth:429px;dialogHeight:200px;location:no,menubar:no,toolbar:no,status:no');
public static void Show(System.Web.UI.Page page, string msg)
{
page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<script language='javascript' defer>alert('" + msg.ToString() + "'); window.location.href='OneSelfInfoEditor.aspx';</script>");
}
Show(this, "保存成功!");
6.Page.clientscript.registerstartupscript(this.gettype(), "", "<script>window.open('../issue/issueallcomment.aspx');</script>");
即可解决.
7.使用ajax组件的函数,如下:
System.Web.UI.ScriptManager.RegisterStartupScript(this, this.GetType(), "opennewwindow", "alert('弹出框内容!');", true);
8.在页面的body的最后一行放置一个控件,并在代码页里给这个控件赋值,如:
label.Text="<script>alert('弹出框内容!); </script> ";
9.C#中,弹出窗口的代码为:
MessageBox("用户名或密码错误!","错误:");
而在Asp.net中,则不可以用这种方法了,这时我们可以写一个类Message(名字随便取),内容如下:
using System;
namespace Common
{
/// <summary>
/// Message 的摘要说明。
/// </summary>
public class Message
{
public Message()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
//返回一个弹出窗口
public static string Show(string strMsg)
{
//这里0就指strMsg这东西,1就是指/这东西.
return String.Format("<script language={1}javascript{1}>alert({1}{0}{1});</script>",strMsg,"/"");
}
}
}
然后在要弹出对话框的页面上,添加一个label控件,假设命名为lblMsg,这时,后台写代码:
lblMsg.Text = Message.Show("这里写要弹出来的内容");
这样就可以实现弹出提示的效果了.注意,我的类是写在通用层中,所以还要先引用通用层:
using Common;
10.在ASP.NET中弹出的对话框里加入自定义提示框信息。
在这里首先讲解下如何应用Cookie缓存对象实现验证登录信息,之后再对验证信息弹出的提示框中加上自定义提示性标识语言。
(1)新建一个网站,默认主页为Default.aspx,在该主页中添加两个TextBox控件和两个Button控件,分别用来实现输入用户名及密码、提交和重置登录信息。
(2)双击Default.aspx页面中的“登陆”按钮,触发登录按钮的imb_login_Click事件,实例应用Cookie对象将用户登录信息存储起来,实现的代码如下:
protected void imb_login_Click(object sender, EventArgs e)
{
if (t_AdminCode.Text.Trim() != "" && t_AdminPwd.Text.Trim()!= "")
{
//声明一个Cookie对象,存储用户输入的用户名
HttpCookie cookieAdminCode = new HttpCookie("CookAdminCode");
//赋值给定义的Cookie值
cookieAdminCode["AdminCode"] = t_AdminCode.Text.Trim();
//设定Cookie过期时间
cookieAdminCode.Expires.AddDays(1);
//添加Cookie值
Response.Cookies.Add(cookieAdminCode);
//声明一个Cookie对象,存储用户输入的密码
HttpCookie cookieAdminPwd = new HttpCookie("CookAdminPwd");
cookieAdminPwd["AdminPwd"] = t_AdminPwd.Text.Trim();
cookieAdminPwd.Expires.AddDays(1);
Response.Cookies.Add(cookieAdminPwd);
Response.Redirect("Main.aspx");
}
else
{
MessageBox("对不起,请输入用户名及密码!");
}
}
(3)在Default.aspx页面中用户输入的用户名及密码是否正确将在新创建的Main.aspx页面中时行验证是否合法用户,这里主要是通Cookie对象来接收登录页面中传过来的用户名及密码,具体代码如下:
protected void Page_Load(object sender, EventArgs e)
{
HttpCookie cookieAdminCode = Request.Cookies["CookAdminCode"];
HttpCookie cookieAdminPwd = Request.Cookies["CookAdminPwd"];
string AdminCode = cookieAdminCode.Values["AdminCode"].ToString().Trim();
string AdminPwd = cookieAdminPwd.Values["AdminPwd"].ToString().Trim();
if (AdminCode == "mr" && AdminPwd == "mrsoft")
{
MessageBox("登录成功!");
Label1.Text = "欢迎" + AdminCode + "登录本系统!";
}
else
{
MessageBox("对不起,身份验证失败请重试!");
Response.Write("<script language=javascript>window.location.href='Default.aspx'</script>");
}
}
(4)弹出提示框信息编写了一个自定义方法MessageBox,代码如下:
#region --MessageBox(string Message)
private void MessageBox(string Message)
{
string msgTitle = System.Configuration.ConfigurationSettings.AppSettings["MsgTitle"].ToString().Trim();
Response.Write("<script language=javascript>alert('" + msgTitle + "/n/n" + Message + "');</script>");
}
#endregion
另外,需要在Web.config配置文件配置相关必要信息如下:
<appSettings>
<add key="WebTitle" value="XX科技有限公司"/>
<add key="MsgTitle" value="wph提示您:"/>
</appSettings>