您的位置:首页 > 编程语言 > ASP

ASP.NET弹出对话框多种实现方法

2007-11-06 22:26 621 查看
在ASP.NET程序的开发过程中,常常需要向用户给出提示信息,比如是否“操作成功”,“确定”还是“取消”操作。

(1) 点击页面上的按钮,弹出一个对话框提示是“确定”还是“取消”操作,我们采用在按钮中添加属性来完成:
举例如下:
public System.Web.UI.WebControls.Button btnDelRow;
btnDelRow.Attributes.Add("onclick", "return confirm('确定要删吗?');");
(2) 对于页面完成一个操作后,弹出一个对话框提示是否“操作成功”。
举例如下:
Response.Write("<script>alert('删除成功!')</script>");

(3)允许 ASP.NET 服务器控件在 Page 中发出客户端脚本块:
public virtual void RegisterStartupScript(string key,string script);

举例如下:
if(!this.IsStartupScriptRegistered("hello"))
this.RegisterStartupScript("hello","<script>alert('你好!')</script>");

我们也可以使用写一个类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;

这个方法其实是紫色物语提供的,当时我写项目遇到这个问题,他告诉我这种方法,在此感谢他的帮助.

回答一下丽日的问题:
Web窗体是可以使用的,原来的Message类是放在通用类Common文件夹下了,当然你也可以把这个类新建到任何位置。
当新建在App_Code文件夹下后,可以直接调用Message.Show()方法
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: