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

ASP.NET中的事件处理

2006-08-04 22:13 295 查看
.ASP.NET服务器事件:
private void btnOK_Click(object sender, System.EventArgs e)
{
Response.Write("设计时添加事件!");
}
private void btnTest2_Click(object sender,System.EventArgs e)
{
Response.Write("运行时添加事件!");
}
private void InitializeComponent()
{
this.btnOK.Click += new System.EventHandler(this.btnOK_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
private void Page_Load(object sender, System.EventArgs e)
{
btnTest2.Click += new System.EventHandler(btnTest2_Click);
}

ASP.NET服务端添加客户端事件:
private void Page_Load(object sender, System.EventArgs e)
{
string script = @"return confirm('真的要删除吗?');";
this.Button1.Attributes.Add("onclick",script);
if (!Page.IsStartupScriptRegistered("PopUp")&&!Page.IsPostBack)
{
string scriptBlock =
@"<script language=""JavaScript"">alert(""发送客户端脚本"");
</script>";
Page.RegisterStartupScript("PopUp", scriptBlock);
}
}

通过客户端事件引发服务端事件:
private void Page_Load(object sender, System.EventArgs e)
{
string strCMD = Page.GetPostBackClientHyperlink( btnSave, "" );
string script = @"Javascript:ConfirmUpdate(""EVAL_MESSAGE"");";
script = script.Replace( "EVAL_MESSAGE" , strCMD );
ddlTest.Attributes.Add("onchange",script);
}
private void btnSave_Click(object sender, System.EventArgs e)
{
Response.Write("已经保存!");
}

服务器控件的刷新问题:
private void Page_Load(object sender, System.EventArgs e)
{
if(!Page.IsClientScriptBlockRegistered("MyScript"))
this.RegisterClientScriptBlock("MyScript",ScriptHelper.GetViewControlScript("Button1"));
}
/// 提供一些产生页面脚本的方法
public class ScriptHelper
{
  /// 获取客户端查看控件的脚本
  public static string GetViewControlScript(string controlName)
  {
  //创建客户端函数ViewObj
  string script = "/n";
  script += "<script language=/"javascript/">/n";
  script += "function ViewObj(objName)/n";
  script += "{/n";
  script += "var obj = document.all.item(objName);/n";
  script += "if (obj != null)/n";
  script += "{/n";
  script += "/tobj.scrollIntoView();/n";
  script += "/tobj.focus();/n";
  script += "}/n";
  script += "}/n";
  //创建客户端函数ToDo
  script += "function ToDo()";
  script += "{/n";
  script += string.Format("setTimeout(/"ViewObj('{0}')/",1000);/n", controlName);
  script += "}/n";
  script += "window.onload = ToDo;/n";
  script += "</script>/n";
  return script;
  }
}

如何回车触发指定按钮的事件:
function SubmitKeyClick(button)
{ if (event.keyCode == 13) //回车键盘
{ event.returnValue = false; document.all[button].click(); }
}
private void Page_Load(object sender, System.EventArgs e)
{
tbInput.Attributes.Add("onkeydown","SubmitKeyClick('btnOK');");
}
private void btnOK_Click(object sender, System.EventArgs e)
{
Response.Write("ok!");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: